-IF(WIN32)
+IF(WIN32 AND NOT MINGW)
# For Windows, we don't used FIND_PACKAGE because DCMTK usually is used with its
# own set of 3rd-party support libraries that can be downloaded from DCMTK's
ENDIF(WITH_LIBICONVINC)
ENDIF(DCMTK_WITH_ICONV)
-ELSE(WIN32)
+ELSE(WIN32 AND NOT MINGW)
# Find TIFF
IF(DCMTK_WITH_TIFF)
SET(DCMTK_WIDE_CHAR_FILE_IO_FUNCTIONS @DCMTK_WIDE_CHAR_FILE_IO_FUNCTIONS@)
SET(DCMTK_WIDE_CHAR_MAIN_FUNCTION @DCMTK_WIDE_CHAR_MAIN_FUNCTION@)
-@DCMTK_INCLUDE_DIR_CONFIGS@
-
SET_AND_CHECK(DCMTK_TARGETS "@PACKAGE_DCMTK_CMKDIR_CONFIG@/DCMTKTargets.cmake")
-SET(DCMTK_INCLUDE_DIRS "")
-FOREACH(module config ${DCMTK_MODULES})
- LIST(APPEND DCMTK_INCLUDE_DIRS ${DCMTK_${module}_INCLUDE_DIR})
-ENDFOREACH(module)
-
@DCMTK_CONFIG_CODE@
# Compatibility: This variable is deprecated
SET(DCMTK_BUILD_VERSION 1)
# The ABI is not guaranteed to be stable between different snapshots/releases,
# so this particular version number is increased for each snapshot or release.
-SET(DCMTK_ABI_VERSION 9)
+SET(DCMTK_ABI_VERSION 10)
# Package "release" settings (some are currently unused and, therefore, disabled)
SET(DCMTK_PACKAGE_NAME "dcmtk")
ENDIF(COMMAND CMAKE_POLICY)
# pass optional build date to compiler
-ADD_DEFINITIONS(-DDCMTK_BUILD_DATE=\\\"2016-06-30\\\")
+ADD_DEFINITIONS(-DDCMTK_BUILD_DATE=\\\"2016-11-02\\\")
# make OFString(NULL) safe by default
ADD_DEFINITIONS(-DUSE_NULL_SAFE_OFSTRING)
SET(DCMTK_MODULES ofstd oflog dcmdata dcmimgle
dcmimage dcmjpeg dcmjpls dcmtls dcmnet dcmsr
- dcmsign dcmwlm dcmqrdb dcmpstat dcmrt dcmiod dcmfg dcmseg dcmtract
+ dcmsign dcmwlm dcmqrdb dcmpstat dcmrt dcmiod dcmfg dcmseg dcmtract dcmpmap
CACHE STRING "List of modules that should be built.")
#-----------------------------------------------------------------------------
.NOTPARALLEL:
-all: config-all ofstd-all oflog-all dcmdata-all dcmiod-all dcmfg-all dcmseg-all dcmimgle-all dcmimage-all dcmjpeg-all dcmjpls-all dcmtls-all dcmnet-all dcmsr-all dcmsign-all dcmwlm-all dcmqrdb-all dcmpstat-all dcmrt-all dcmtract-all
+all: config-all ofstd-all oflog-all dcmdata-all dcmiod-all dcmfg-all dcmseg-all dcmimgle-all dcmimage-all dcmjpeg-all dcmjpls-all dcmtls-all dcmnet-all dcmsr-all dcmsign-all dcmwlm-all dcmqrdb-all dcmpstat-all dcmrt-all dcmtract-all dcmpmap-all
-libsrc-all: ofstd-libsrc-all oflog-libsrc-all dcmdata-libsrc-all dcmiod-libsrc-all dcmfg-libsrc-all dcmseg-libsrc-all dcmimgle-libsrc-all dcmimage-libsrc-all dcmjpeg-libsrc-all dcmjpls-libsrc-all dcmtls-libsrc-all dcmnet-libsrc-all dcmsr-libsrc-all dcmsign-libsrc-all dcmwlm-libsrc-all dcmqrdb-libsrc-all dcmpstat-libsrc-all dcmrt-libsrc-all dcmtract-libsrc-all
+libsrc-all: ofstd-libsrc-all oflog-libsrc-all dcmdata-libsrc-all dcmiod-libsrc-all dcmfg-libsrc-all dcmseg-libsrc-all dcmimgle-libsrc-all dcmimage-libsrc-all dcmjpeg-libsrc-all dcmjpls-libsrc-all dcmtls-libsrc-all dcmnet-libsrc-all dcmsr-libsrc-all dcmsign-libsrc-all dcmwlm-libsrc-all dcmqrdb-libsrc-all dcmpstat-libsrc-all dcmrt-libsrc-all dcmtract-libsrc-all dcmpmap-libsrc-all
-tests-all: config-tests-all ofstd-tests-all oflog-tests-all dcmdata-tests-all dcmiod-tests-all dcmfg-tests-all dcmseg-tests-all dcmimgle-tests-all dcmimage-tests-all dcmjpeg-tests-all dcmjpls-tests-all dcmtls-tests-all dcmnet-tests-all dcmsr-tests-all dcmsign-tests-all dcmwlm-tests-all dcmqrdb-tests-all dcmpstat-tests-all dcmrt-tests-all dcmtract-tests-all
+tests-all: config-tests-all ofstd-tests-all oflog-tests-all dcmdata-tests-all dcmiod-tests-all dcmfg-tests-all dcmseg-tests-all dcmimgle-tests-all dcmimage-tests-all dcmjpeg-tests-all dcmjpls-tests-all dcmtls-tests-all dcmnet-tests-all dcmsr-tests-all dcmsign-tests-all dcmwlm-tests-all dcmqrdb-tests-all dcmpstat-tests-all dcmrt-tests-all dcmtract-tests-all dcmpmap-tests-all
-install: config-install ofstd-install oflog-install dcmdata-install dcmiod-install dcmfg-install dcmseg-install dcmimgle-install dcmimage-install dcmjpeg-install dcmjpls-install dcmtls-install dcmnet-install dcmsr-install dcmsign-install dcmwlm-install dcmqrdb-install dcmpstat-install dcmrt-install dcmtract-install dcmtk-install-doc install-man
+install: config-install ofstd-install oflog-install dcmdata-install dcmiod-install dcmfg-install dcmseg-install dcmimgle-install dcmimage-install dcmjpeg-install dcmjpls-install dcmtls-install dcmnet-install dcmsr-install dcmsign-install dcmwlm-install dcmqrdb-install dcmpstat-install dcmrt-install dcmtract-install dcmpmap-install dcmtk-install-doc install-man
install-all: install install-lib install-html
-install-bin: config-install-bin ofstd-install-bin oflog-install-bin dcmdata-install-bin dcmiod-install-bin dcmfg-install-bin dcmseg-install-bin dcmimgle-install-bin dcmimage-install-bin dcmjpeg-install-bin dcmjpls-install-bin dcmtls-install-bin dcmnet-install-bin dcmsr-install-bin dcmsign-install-bin dcmwlm-install-bin dcmqrdb-install-bin dcmpstat-install-bin dcmrt-install-bin dcmtract-install-bin
+install-bin: config-install-bin ofstd-install-bin oflog-install-bin dcmdata-install-bin dcmiod-install-bin dcmfg-install-bin dcmseg-install-bin dcmimgle-install-bin dcmimage-install-bin dcmjpeg-install-bin dcmjpls-install-bin dcmtls-install-bin dcmnet-install-bin dcmsr-install-bin dcmsign-install-bin dcmwlm-install-bin dcmqrdb-install-bin dcmpstat-install-bin dcmrt-install-bin dcmtract-install-bin dcmpmap-install-bin
-install-doc: config-install-doc ofstd-install-doc oflog-install-doc dcmdata-install-doc dcmiod-install-doc dcmfg-install-doc dcmseg-install-doc dcmimgle-install-doc dcmimage-install-doc dcmjpeg-install-doc dcmjpls-install-doc dcmtls-install-doc dcmnet-install-doc dcmsr-install-doc dcmsign-install-doc dcmwlm-install-doc dcmqrdb-install-doc dcmpstat-install-doc dcmrt-install-doc dcmtract-install-doc
+install-doc: config-install-doc ofstd-install-doc oflog-install-doc dcmdata-install-doc dcmiod-install-doc dcmfg-install-doc dcmseg-install-doc dcmimgle-install-doc dcmimage-install-doc dcmjpeg-install-doc dcmjpls-install-doc dcmtls-install-doc dcmnet-install-doc dcmsr-install-doc dcmsign-install-doc dcmwlm-install-doc dcmqrdb-install-doc dcmpstat-install-doc dcmrt-install-doc dcmtract-install-doc dcmpmap-install-doc
-install-data: config-install-data ofstd-install-data oflog-install-data dcmdata-install-data dcmiod-install-data dcmfg-install-data dcmseg-install-data dcmimgle-install-data dcmimage-install-data dcmjpeg-install-data dcmjpls-install-data dcmtls-install-data dcmnet-install-data dcmsr-install-data dcmsign-install-data dcmwlm-install-data dcmqrdb-install-data dcmpstat-install-data dcmrt-install-data dcmtract-install-data
+install-data: config-install-data ofstd-install-data oflog-install-data dcmdata-install-data dcmiod-install-data dcmfg-install-data dcmseg-install-data dcmimgle-install-data dcmimage-install-data dcmjpeg-install-data dcmjpls-install-data dcmtls-install-data dcmnet-install-data dcmsr-install-data dcmsign-install-data dcmwlm-install-data dcmqrdb-install-data dcmpstat-install-data dcmrt-install-data dcmtract-install-data dcmpmap-install-data
-install-etc: config-install-etc ofstd-install-etc oflog-install-etc dcmdata-install-etc dcmiod-install-etc dcmfg-install-etc dcmseg-install-etc dcmimgle-install-etc dcmimage-install-etc dcmjpeg-install-etc dcmjpls-install-etc dcmtls-install-etc dcmnet-install-etc dcmsr-install-etc dcmsign-install-etc dcmwlm-install-etc dcmqrdb-install-etc dcmpstat-install-etc dcmrt-install-etc dcmtract-install-etc
+install-etc: config-install-etc ofstd-install-etc oflog-install-etc dcmdata-install-etc dcmiod-install-etc dcmfg-install-etc dcmseg-install-etc dcmimgle-install-etc dcmimage-install-etc dcmjpeg-install-etc dcmjpls-install-etc dcmtls-install-etc dcmnet-install-etc dcmsr-install-etc dcmsign-install-etc dcmwlm-install-etc dcmqrdb-install-etc dcmpstat-install-etc dcmrt-install-etc dcmtract-install-etc dcmpmap-install-etc
-install-lib: config-install-lib ofstd-install-lib oflog-install-lib dcmdata-install-lib dcmiod-install-lib dcmfg-install-lib dcmseg-install-lib dcmimgle-install-lib dcmimage-install-lib dcmjpeg-install-lib dcmjpls-install-lib dcmtls-install-lib dcmnet-install-lib dcmsr-install-lib dcmsign-install-lib dcmwlm-install-lib dcmqrdb-install-lib dcmpstat-install-lib dcmrt-install-lib dcmtract-install-lib
+install-lib: config-install-lib ofstd-install-lib oflog-install-lib dcmdata-install-lib dcmiod-install-lib dcmfg-install-lib dcmseg-install-lib dcmimgle-install-lib dcmimage-install-lib dcmjpeg-install-lib dcmjpls-install-lib dcmtls-install-lib dcmnet-install-lib dcmsr-install-lib dcmsign-install-lib dcmwlm-install-lib dcmqrdb-install-lib dcmpstat-install-lib dcmrt-install-lib dcmtract-install-lib dcmpmap-install-lib
-install-include: config-install-include ofstd-install-include oflog-install-include dcmdata-install-include dcmiod-install-include dcmfg-install-include dcmseg-install-include dcmimgle-install-include dcmimage-install-include dcmjpeg-install-include dcmjpls-install-include dcmtls-install-include dcmnet-install-include dcmsr-install-include dcmsign-install-include dcmwlm-install-include dcmqrdb-install-include dcmpstat-install-include dcmrt-install-include dcmtract-install-include
+install-include: config-install-include ofstd-install-include oflog-install-include dcmdata-install-include dcmiod-install-include dcmfg-install-include dcmseg-install-include dcmimgle-install-include dcmimage-install-include dcmjpeg-install-include dcmjpls-install-include dcmtls-install-include dcmnet-install-include dcmsr-install-include dcmsign-install-include dcmwlm-install-include dcmqrdb-install-include dcmpstat-install-include dcmrt-install-include dcmtract-install-include dcmpmap-install-include
-install-support: config-install-support ofstd-install-support oflog-install-support dcmdata-install-support dcmiod-install-support dcmfg-install-support dcmseg-install-support dcmimgle-install-support dcmimage-install-support dcmjpeg-install-support dcmjpls-install-support dcmtls-install-support dcmnet-install-support dcmsr-install-support dcmsign-install-support dcmwlm-install-support dcmqrdb-install-support dcmpstat-install-support dcmrt-install-support dcmtract-install-support
+install-support: config-install-support ofstd-install-support oflog-install-support dcmdata-install-support dcmiod-install-support dcmfg-install-support dcmseg-install-support dcmimgle-install-support dcmimage-install-support dcmjpeg-install-support dcmjpls-install-support dcmtls-install-support dcmnet-install-support dcmsr-install-support dcmsign-install-support dcmwlm-install-support dcmqrdb-install-support dcmpstat-install-support dcmrt-install-support dcmtract-install-support dcmpmap-install-support
check: tests-all
$(MAKE) -s check-nosilent
-check-nosilent: config-check ofstd-check oflog-check dcmdata-check dcmiod-check dcmfg-check dcmseg-check dcmimgle-check dcmimage-check dcmjpeg-check dcmjpls-check dcmtls-check dcmnet-check dcmsr-check dcmsign-check dcmwlm-check dcmqrdb-check dcmpstat-check dcmrt-check dcmtract-check
+check-nosilent: config-check ofstd-check oflog-check dcmdata-check dcmiod-check dcmfg-check dcmseg-check dcmimgle-check dcmimage-check dcmjpeg-check dcmjpls-check dcmtls-check dcmnet-check dcmsr-check dcmsign-check dcmwlm-check dcmqrdb-check dcmpstat-check dcmrt-check dcmtract-check dcmpmap-check
check-exhaustive: tests-all
$(MAKE) -s check-nosilent-exhaustive
-check-nosilent-exhaustive: config-check-exhaustive ofstd-check-exhaustive oflog-check-exhaustive dcmdata-check-exhaustive dcmiod-check-exhaustive dcmfg-check-exhaustive dcmseg-check-exhaustive dcmimgle-check-exhaustive dcmimage-check-exhaustive dcmjpeg-check-exhaustive dcmjpls-check-exhaustive dcmtls-check-exhaustive dcmnet-check-exhaustive dcmsr-check-exhaustive dcmsign-check-exhaustive dcmwlm-check-exhaustive dcmqrdb-check-exhaustive dcmpstat-check-exhaustive dcmrt-check-exhaustive dcmtract-check-exhaustive
+check-nosilent-exhaustive: config-check-exhaustive ofstd-check-exhaustive oflog-check-exhaustive dcmdata-check-exhaustive dcmiod-check-exhaustive dcmfg-check-exhaustive dcmseg-check-exhaustive dcmimgle-check-exhaustive dcmimage-check-exhaustive dcmjpeg-check-exhaustive dcmjpls-check-exhaustive dcmtls-check-exhaustive dcmnet-check-exhaustive dcmsr-check-exhaustive dcmsign-check-exhaustive dcmwlm-check-exhaustive dcmqrdb-check-exhaustive dcmpstat-check-exhaustive dcmrt-check-exhaustive dcmtract-check-exhaustive dcmpmap-check-exhaustive
dcmtk-install-doc:
$(configdir)/mkinstalldirs $(DESTDIR)$(docdir)
@echo ""
@echo "The following modules are available:"
@echo ""
- @echo "ofstd oflog dcmdata dcmiod dcmfg dcmseg dcmimgle dcmimage dcmjpeg dcmjpls dcmtls dcmnet dcmsr dcmsign dcmwlm dcmqrdb dcmpstat dcmrt dcmtract"
+ @echo "ofstd oflog dcmdata dcmiod dcmfg dcmseg dcmimgle dcmimage dcmjpeg dcmjpls dcmtls dcmnet dcmsr dcmsign dcmwlm dcmqrdb dcmpstat dcmrt dcmtract dcmpmap"
config-all:
(cd config && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" all)
dcmtract-check-exhaustive:
(cd dcmtract && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" check-exhaustive)
+dcmpmap-all:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" all)
+
+dcmpmap-libsrc-all:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" libsrc-all)
+
+dcmpmap-tests-all:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" tests-all)
+
+dcmpmap-install:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install)
+
+dcmpmap-install-bin:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install-bin)
+
+dcmpmap-install-doc:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install-doc)
+
+dcmpmap-install-data:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install-data)
+
+dcmpmap-install-etc:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install-etc)
+
+dcmpmap-install-lib:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install-lib)
+
+dcmpmap-install-include:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install-include)
+
+dcmpmap-install-support:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" install-support)
+
+dcmpmap-check:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" check)
+
+dcmpmap-check-exhaustive:
+ (cd dcmpmap && $(MAKE) ARCH="$(ARCH)" DESTDIR="$(DESTDIR)" check-exhaustive)
+
dependencies:
-(cd config && $(MAKE) dependencies)
(cd ofstd && $(MAKE) dependencies)
(cd dcmpstat && $(MAKE) dependencies)
(cd dcmrt && $(MAKE) dependencies)
(cd dcmtract && $(MAKE) dependencies)
+ (cd dcmpmap && $(MAKE) dependencies)
clean:
(cd ofstd && $(MAKE) clean)
(cd dcmpstat && $(MAKE) clean)
(cd dcmrt && $(MAKE) clean)
(cd dcmtract && $(MAKE) clean)
+ (cd dcmpmap && $(MAKE) clean)
(cd doxygen && $(MAKE) clean)
-(cd config && $(MAKE) clean)
rm -f $(TRASH)
(cd dcmpstat && $(MAKE) distclean)
(cd dcmrt && $(MAKE) distclean)
(cd dcmtract && $(MAKE) distclean)
+ (cd dcmpmap && $(MAKE) distclean)
(cd doxygen && $(MAKE) distclean)
-(cd config && $(MAKE) distclean)
rm -f $(TRASH)
dcmjpeg - a compression/decompression library and utility apps
dcmjpls - a compression/decompression library and utility apps
dcmnet - a networking library and utility apps
+ dcmpmap - a library for working with parametric map objects
dcmpstat - a presentation state library and utility apps
dcmqrdb - an image database server
dcmrt - a radiation therapy library and utility apps
dcmseg - a library for working with segmentation objects
dcmsign - a digital signature library and utility apps
- dcmsr - a structured report library and utility apps
+ dcmsr - a structured reporting library and utility apps
dcmtls - security extensions for the network library
+ dcmtract - a library for working with tractography results
dcmwlm - a modality worklist database server
oflog - a logging library based on log4cplus
ofstd - a library of general purpose classes
-3.6.1_20160630
+3.6.1_20161102
#
# We want the old behavior of OFString(NULL) for now, no crashes.
-GLOBALDEFS = @DEFS@ -DDCMTK_BUILD_DATE=\"2016-06-30\" -DUSE_NULL_SAFE_OFSTRING -DDCMTK_BUILD_IN_PROGRESS
+GLOBALDEFS = @DEFS@ -DDCMTK_BUILD_DATE=\"2016-11-02\" -DUSE_NULL_SAFE_OFSTRING -DDCMTK_BUILD_IN_PROGRESS
#
-# ARCH defines special machine archtecture compiler settings
+# ARCH defines special machine architecture compiler settings
# (e.g. -arch i386 on NeXT)
#
-ofstd oflog dcmdata dcmiod dcmfg dcmseg dcmimgle dcmimage dcmjpeg dcmjpls dcmtls dcmnet dcmsr dcmsign dcmwlm dcmqrdb dcmpstat dcmrt dcmtract
+ofstd oflog dcmdata dcmiod dcmfg dcmseg dcmimgle dcmimage dcmjpeg dcmjpls dcmtls dcmnet dcmsr dcmsign dcmwlm dcmqrdb dcmpstat dcmrt dcmtract dcmpmap
cmd.beginOptionBlock();
if (cmd.findOption("--dont-overwrite-uids"))
+ {
+ app.checkDependence("--dont-overwrite-uids", "--generate-new-uids", opt_generateUIDs);
opt_overwriteUIDs = OFFalse;
+ }
if (cmd.findOption("--overwrite-uids"))
+ {
+ app.checkDependence("--overwrite-uids", "--generate-new-uids", opt_generateUIDs);
opt_overwriteUIDs = OFTrue;
+ }
cmd.endOptionBlock();
/* output options */
# DICONDE (Digital Imaging and Communication in Nondestructive Evaluation) and
# DICOS (Digital Imaging and Communications in Security) standard.
#
-# Generated automatically from DICOM PS 3.6-2016c and PS 3.7-2016c
-# File created on 2016-06-13 09:52:04 by J. Riesmeier on thinkpad.
+# Generated automatically from DICOM PS 3.6-2016d and PS 3.7-2016d
+# File created on 2016-10-04 11:49:44 by J. Riesmeier on thinkpad.
#
# In addition, the data dictionary entries from the following final text
# supplements and correction items (CP) have been incorporated:
(0008,0123) SQ ContextGroupIdentificationSequence 1 DICOM
(0008,0124) SQ MappingResourceIdentificationSequence 1 DICOM
(0008,0201) SH TimezoneOffsetFromUTC 1 DICOM
+(0008,0220) SQ ResponsibleGroupCodeSequence 1 DICOM
+(0008,0221) CS EquipmentModality 1 DICOM
+(0008,0222) LO ManufacturerRelatedModelGroup 1 DICOM
(0008,0300) SQ PrivateDataElementCharacteristicsSequence 1 DICOM
(0008,0301) US PrivateGroupReference 1 DICOM
(0008,0302) LO PrivateCreatorReference 1 DICOM
(0008,0305) SQ DeidentificationActionSequence 1 DICOM
(0008,0306) US IdentifyingPrivateElements 1-n DICOM
(0008,0307) CS DeidentificationAction 1 DICOM
+(0008,0308) US PrivateDataElement 1 DICOM
+(0008,0309) UL PrivateDataElementValueMultiplicity 1-3 DICOM
+(0008,030A) CS PrivateDataElementValueRepresentation 1 DICOM
+(0008,030B) UL PrivateDataElementNumberOfItems 1-2 DICOM
+(0008,030C) UC PrivateDataElementName 1 DICOM
+(0008,030D) UC PrivateDataElementKeyword 1 DICOM
+(0008,030E) UT PrivateDataElementDescription 1 DICOM
+(0008,030F) UT PrivateDataElementEncoding 1 DICOM
+(0008,0310) SQ PrivateDataElementDefinitionSequence 1 DICOM
(0008,1010) SH StationName 1 DICOM
(0008,1030) LO StudyDescription 1 DICOM
(0008,1032) SQ ProcedureCodeSequence 1 DICOM
(0010,1010) AS PatientAge 1 DICOM
(0010,1020) DS PatientSize 1 DICOM
(0010,1021) SQ PatientSizeCodeSequence 1 DICOM
+(0010,1022) DS PatientBodyMassIndex 1 DICOM
+(0010,1023) DS MeasuredAPDimension 1 DICOM
+(0010,1024) DS MeasuredLateralDimension 1 DICOM
(0010,1030) DS PatientWeight 1 DICOM
(0010,1040) LO PatientAddress 1 DICOM
(0010,1060) PN PatientMotherBirthName 1 DICOM
(0012,0083) SQ ConsentForClinicalTrialUseSequence 1 DICOM
(0012,0084) CS DistributionType 1 DICOM
(0012,0085) CS ConsentForDistributionFlag 1 DICOM
+(0012,0086) DA EthicsCommitteeApprovalEffectivenessStartDate 1 DICOM
+(0012,0087) DA EthicsCommitteeApprovalEffectivenessEndDate 1 DICOM
(0014,0025) ST ComponentManufacturingProcedure 1 DICOM/DICONDE
(0014,0028) ST ComponentManufacturer 1 DICOM/DICONDE
(0014,0030) DS MaterialThickness 1-n DICOM/DICONDE
(0018,1006) LO GridID 1 DICOM
(0018,1007) LO CassetteID 1 DICOM
(0018,1008) LO GantryID 1 DICOM
+(0018,1009) UT UniqueDeviceIdentifier 1 DICOM
+(0018,100A) SQ UDISequence 1 DICOM
(0018,1010) LO SecondaryCaptureDeviceID 1 DICOM
(0018,1012) DA DateOfSecondaryCapture 1 DICOM
(0018,1014) TM TimeOfSecondaryCapture 1 DICOM
(0018,9320) SH ImageFilter 1 DICOM
(0018,9321) SQ CTExposureSequence 1 DICOM
(0018,9322) FD ReconstructionPixelSpacing 2 DICOM
-(0018,9323) CS ExposureModulationType 1 DICOM
+(0018,9323) CS ExposureModulationType 1-n DICOM
(0018,9324) FD EstimatedDoseSaving 1 DICOM
(0018,9325) SQ CTXRayDetailsSequence 1 DICOM
(0018,9326) SQ CTPositionSequence 1 DICOM
(0018,980E) SQ TransducerBeamSteeringCodeSequence 1 DICOM
(0018,980F) SQ TransducerApplicationCodeSequence 1 DICOM
(0018,9810) xs ZeroVelocityPixelValue 1 DICOM
+(0018,9900) LO ReferenceLocationLabel 1 DICOM
+(0018,9901) UT ReferenceLocationDescription 1 DICOM
+(0018,9902) SQ ReferenceBasisCodeSequence 1 DICOM
+(0018,9903) SQ ReferenceGeometryCodeSequence 1 DICOM
+(0018,9904) DS OffsetDistance 1 DICOM
+(0018,9905) CS OffsetDirection 1 DICOM
+(0018,9906) SQ PotentialScheduledProtocolCodeSequence 1 DICOM
+(0018,9907) SQ PotentialRequestedProcedureCodeSequence 1 DICOM
+(0018,9908) UC PotentialReasonsForProcedure 1-n DICOM
+(0018,9909) SQ PotentialReasonsForProcedureCodeSequence 1 DICOM
+(0018,990A) UC PotentialDiagnosticTasks 1-n DICOM
+(0018,990B) SQ ContraindicationsCodeSequence 1 DICOM
+(0018,990C) SQ ReferencedDefinedProtocolSequence 1 DICOM
+(0018,990D) SQ ReferencedPerformedProtocolSequence 1 DICOM
+(0018,990E) SQ PredecessorProtocolSequence 1 DICOM
+(0018,990F) UT ProtocolPlanningInformation 1 DICOM
+(0018,9910) UT ProtocolDesignRationale 1 DICOM
+(0018,9911) SQ PatientSpecificationSequence 1 DICOM
+(0018,9912) SQ ModelSpecificationSequence 1 DICOM
+(0018,9913) SQ ParametersSpecificationSequence 1 DICOM
+(0018,9914) SQ InstructionSequence 1 DICOM
+(0018,9915) US InstructionIndex 1 DICOM
+(0018,9916) LO InstructionText 1 DICOM
+(0018,9917) UT InstructionDescription 1 DICOM
+(0018,9918) CS InstructionPerformedFlag 1 DICOM
+(0018,9919) DT InstructionPerformedDateTime 1 DICOM
+(0018,991A) UT InstructionPerformanceComment 1 DICOM
+(0018,991B) SQ PatientPositioningInstructionSequence 1 DICOM
+(0018,991C) SQ PositioningMethodCodeSequence 1 DICOM
+(0018,991D) SQ PositioningLandmarkSequence 1 DICOM
+(0018,991E) UI TargetFrameOfReferenceUID 1 DICOM
+(0018,991F) SQ AcquisitionProtocolElementSpecificationSequence 1 DICOM
+(0018,9920) SQ AcquisitionProtocolElementSequence 1 DICOM
+(0018,9921) US ProtocolElementNumber 1 DICOM
+(0018,9922) LO ProtocolElementName 1 DICOM
+(0018,9923) UT ProtocolElementCharacteristicsSummary 1 DICOM
+(0018,9924) UT ProtocolElementPurpose 1 DICOM
+(0018,9930) CS AcquisitionMotion 1 DICOM
+(0018,9931) SQ AcquisitionStartLocationSequence 1 DICOM
+(0018,9932) SQ AcquisitionEndLocationSequence 1 DICOM
+(0018,9933) SQ ReconstructionProtocolElementSpecificationSequence 1 DICOM
+(0018,9934) SQ ReconstructionProtocolElementSequence 1 DICOM
+(0018,9935) SQ StorageProtocolElementSpecificationSequence 1 DICOM
+(0018,9936) SQ StorageProtocolElementSequence 1 DICOM
+(0018,9937) LO RequestedSeriesDescription 1 DICOM
+(0018,9938) US SourceAcquisitionProtocolElementNumber 1-n DICOM
+(0018,9939) US SourceAcquisitionBeamNumber 1-n DICOM
+(0018,993A) US SourceReconstructionProtocolElementNumber 1-n DICOM
+(0018,993B) SQ ReconstructionStartLocationSequence 1 DICOM
+(0018,993C) SQ ReconstructionEndLocationSequence 1 DICOM
+(0018,993D) SQ ReconstructionAlgorithmSequence 1 DICOM
+(0018,993E) SQ ReconstructionTargetCenterLocationSequence 1 DICOM
+(0018,9941) UT ImageFilterDescription 1 DICOM
+(0018,9942) FD CTDIvolNotificationTrigger 1 DICOM
+(0018,9943) FD DLPNotificationTrigger 1 DICOM
+(0018,9944) CS AutoKVPSelectionType 1 DICOM
+(0018,9945) FD AutoKVPUpperBound 1 DICOM
+(0018,9946) FD AutoKVPLowerBound 1 DICOM
+(0018,9947) CS ProtocolDefinedPatientPosition 1 DICOM
(0018,A001) SQ ContributingEquipmentSequence 1 DICOM
(0018,A002) DT ContributionDateTime 1 DICOM
(0018,A003) ST ContributionDescription 1 DICOM
(0020,0200) UI SynchronizationFrameOfReferenceUID 1 DICOM
(0020,0242) UI SOPInstanceUIDOfConcatenationSource 1 DICOM
(0020,1002) IS ImagesInAcquisition 1 DICOM
+(0020,103F) LO TargetPositionReferenceIndicator 1 DICOM
(0020,1040) LO PositionReferenceIndicator 1 DICOM
(0020,1041) DS SliceLocation 1 DICOM
(0020,1200) IS NumberOfPatientRelatedStudies 1 DICOM
(0070,031A) UI FiducialUID 1 DICOM
(0070,031C) SQ FiducialSetSequence 1 DICOM
(0070,031E) SQ FiducialSequence 1 DICOM
+(0070,031F) SQ FiducialsPropertyCategoryCodeSequence 1 DICOM
(0070,0401) US GraphicLayerRecommendedDisplayCIELabValue 3 DICOM
(0070,0402) SQ BlendingSequence 1 DICOM
(0070,0403) FL RelativeOpacity 1 DICOM
(0082,0035) SQ RecommendedDefaultValueSequence 1 DICOM
(0082,0036) CS ConstraintViolationSignificance 1 DICOM
(0082,0037) UT ConstraintViolationCondition 1 DICOM
+(0082,0038) CS ModifiableConstraintFlag 1 DICOM
(0088,0130) SH StorageMediaFileSetID 1 DICOM
(0088,0140) UI StorageMediaFileSetUID 1 DICOM
(0088,0200) SQ IconImageSequence 1 DICOM
(3006,00B6) SQ ROIElementalCompositionSequence 1 DICOM
(3006,00B7) US ROIElementalCompositionAtomicNumber 1 DICOM
(3006,00B8) FL ROIElementalCompositionAtomicMassFraction 1 DICOM
-(3006,00B9) SQ AdditionalRTROIIdentificationCodeSequence 1 DICOM
(3006,00C6) DS FrameOfReferenceTransformationMatrix 16 DICOM
(3006,00C8) LO FrameOfReferenceTransformationComment 1 DICOM
(3008,0010) SQ MeasuredDoseReferenceSequence 1 DICOM
(2130,0080) SQ RETIRED_PresentationLUTContentSequence 1 DICOM/retired
(2130,00A0) SQ RETIRED_ProposedStudySequence 1 DICOM/retired
(2130,00C0) SQ RETIRED_OriginalImageSequence 1 DICOM/retired
+(3006,00B9) SQ RETIRED_AdditionalRTROIIdentificationCodeSequence 1 DICOM/retired
(3006,00C0) SQ RETIRED_FrameOfReferenceRelationshipSequence 1 DICOM/retired
(3006,00C2) UI RETIRED_RelatedFrameOfReferenceUID 1 DICOM/retired
(3006,00C4) CS RETIRED_FrameOfReferenceTransformationType 1 DICOM/retired
**
** User: joergr
** Host: thinkpad
-** Date: 2016-06-13 09:57:12
+** Date: 2016-10-04 12:15:57
** Prog: /home/joergr/Source/dcmtk-full/public/dcmdata/libsrc/mkdeftag
**
** From: ../data/dicom.dic
#include "dcmtk/dcmdata/dctagkey.h"
-#define DCM_DICT_DEFTAG_BUILD_DATE "2016-06-13 09:57:12"
+#define DCM_DICT_DEFTAG_BUILD_DATE "2016-10-04 12:15:57"
/*
** Fixed Tags in ascending (gggg,eeee) order.
-** Number of entries: 4085
+** Number of entries: 4166
** Tags with a repeating component (repeating tags) are listed later.
*/
#define DCM_CommandGroupLength DcmTagKey(0x0000, 0x0000)
#define DCM_ContextGroupIdentificationSequence DcmTagKey(0x0008, 0x0123)
#define DCM_MappingResourceIdentificationSequence DcmTagKey(0x0008, 0x0124)
#define DCM_TimezoneOffsetFromUTC DcmTagKey(0x0008, 0x0201)
+#define DCM_ResponsibleGroupCodeSequence DcmTagKey(0x0008, 0x0220)
+#define DCM_EquipmentModality DcmTagKey(0x0008, 0x0221)
+#define DCM_ManufacturerRelatedModelGroup DcmTagKey(0x0008, 0x0222)
#define DCM_PrivateDataElementCharacteristicsSequence DcmTagKey(0x0008, 0x0300)
#define DCM_PrivateGroupReference DcmTagKey(0x0008, 0x0301)
#define DCM_PrivateCreatorReference DcmTagKey(0x0008, 0x0302)
#define DCM_DeidentificationActionSequence DcmTagKey(0x0008, 0x0305)
#define DCM_IdentifyingPrivateElements DcmTagKey(0x0008, 0x0306)
#define DCM_DeidentificationAction DcmTagKey(0x0008, 0x0307)
+#define DCM_PrivateDataElement DcmTagKey(0x0008, 0x0308)
+#define DCM_PrivateDataElementValueMultiplicity DcmTagKey(0x0008, 0x0309)
+#define DCM_PrivateDataElementValueRepresentation DcmTagKey(0x0008, 0x030a)
+#define DCM_PrivateDataElementNumberOfItems DcmTagKey(0x0008, 0x030b)
+#define DCM_PrivateDataElementName DcmTagKey(0x0008, 0x030c)
+#define DCM_PrivateDataElementKeyword DcmTagKey(0x0008, 0x030d)
+#define DCM_PrivateDataElementDescription DcmTagKey(0x0008, 0x030e)
+#define DCM_PrivateDataElementEncoding DcmTagKey(0x0008, 0x030f)
+#define DCM_PrivateDataElementDefinitionSequence DcmTagKey(0x0008, 0x0310)
#define DCM_RETIRED_NetworkID DcmTagKey(0x0008, 0x1000)
#define DCM_StationName DcmTagKey(0x0008, 0x1010)
#define DCM_StudyDescription DcmTagKey(0x0008, 0x1030)
#define DCM_PatientAge DcmTagKey(0x0010, 0x1010)
#define DCM_PatientSize DcmTagKey(0x0010, 0x1020)
#define DCM_PatientSizeCodeSequence DcmTagKey(0x0010, 0x1021)
+#define DCM_PatientBodyMassIndex DcmTagKey(0x0010, 0x1022)
+#define DCM_MeasuredAPDimension DcmTagKey(0x0010, 0x1023)
+#define DCM_MeasuredLateralDimension DcmTagKey(0x0010, 0x1024)
#define DCM_PatientWeight DcmTagKey(0x0010, 0x1030)
#define DCM_PatientAddress DcmTagKey(0x0010, 0x1040)
#define DCM_RETIRED_InsurancePlanIdentification DcmTagKey(0x0010, 0x1050)
#define DCM_ConsentForClinicalTrialUseSequence DcmTagKey(0x0012, 0x0083)
#define DCM_DistributionType DcmTagKey(0x0012, 0x0084)
#define DCM_ConsentForDistributionFlag DcmTagKey(0x0012, 0x0085)
+#define DCM_EthicsCommitteeApprovalEffectivenessStartDate DcmTagKey(0x0012, 0x0086)
+#define DCM_EthicsCommitteeApprovalEffectivenessEndDate DcmTagKey(0x0012, 0x0087)
#define DCM_RETIRED_CADFileFormat DcmTagKey(0x0014, 0x0023)
#define DCM_RETIRED_ComponentReferenceSystem DcmTagKey(0x0014, 0x0024)
#define DCM_ComponentManufacturingProcedure DcmTagKey(0x0014, 0x0025)
#define DCM_GridID DcmTagKey(0x0018, 0x1006)
#define DCM_CassetteID DcmTagKey(0x0018, 0x1007)
#define DCM_GantryID DcmTagKey(0x0018, 0x1008)
+#define DCM_UniqueDeviceIdentifier DcmTagKey(0x0018, 0x1009)
+#define DCM_UDISequence DcmTagKey(0x0018, 0x100a)
#define DCM_SecondaryCaptureDeviceID DcmTagKey(0x0018, 0x1010)
#define DCM_RETIRED_HardcopyCreationDeviceID DcmTagKey(0x0018, 0x1011)
#define DCM_DateOfSecondaryCapture DcmTagKey(0x0018, 0x1012)
#define DCM_TransducerBeamSteeringCodeSequence DcmTagKey(0x0018, 0x980e)
#define DCM_TransducerApplicationCodeSequence DcmTagKey(0x0018, 0x980f)
#define DCM_ZeroVelocityPixelValue DcmTagKey(0x0018, 0x9810)
+#define DCM_ReferenceLocationLabel DcmTagKey(0x0018, 0x9900)
+#define DCM_ReferenceLocationDescription DcmTagKey(0x0018, 0x9901)
+#define DCM_ReferenceBasisCodeSequence DcmTagKey(0x0018, 0x9902)
+#define DCM_ReferenceGeometryCodeSequence DcmTagKey(0x0018, 0x9903)
+#define DCM_OffsetDistance DcmTagKey(0x0018, 0x9904)
+#define DCM_OffsetDirection DcmTagKey(0x0018, 0x9905)
+#define DCM_PotentialScheduledProtocolCodeSequence DcmTagKey(0x0018, 0x9906)
+#define DCM_PotentialRequestedProcedureCodeSequence DcmTagKey(0x0018, 0x9907)
+#define DCM_PotentialReasonsForProcedure DcmTagKey(0x0018, 0x9908)
+#define DCM_PotentialReasonsForProcedureCodeSequence DcmTagKey(0x0018, 0x9909)
+#define DCM_PotentialDiagnosticTasks DcmTagKey(0x0018, 0x990a)
+#define DCM_ContraindicationsCodeSequence DcmTagKey(0x0018, 0x990b)
+#define DCM_ReferencedDefinedProtocolSequence DcmTagKey(0x0018, 0x990c)
+#define DCM_ReferencedPerformedProtocolSequence DcmTagKey(0x0018, 0x990d)
+#define DCM_PredecessorProtocolSequence DcmTagKey(0x0018, 0x990e)
+#define DCM_ProtocolPlanningInformation DcmTagKey(0x0018, 0x990f)
+#define DCM_ProtocolDesignRationale DcmTagKey(0x0018, 0x9910)
+#define DCM_PatientSpecificationSequence DcmTagKey(0x0018, 0x9911)
+#define DCM_ModelSpecificationSequence DcmTagKey(0x0018, 0x9912)
+#define DCM_ParametersSpecificationSequence DcmTagKey(0x0018, 0x9913)
+#define DCM_InstructionSequence DcmTagKey(0x0018, 0x9914)
+#define DCM_InstructionIndex DcmTagKey(0x0018, 0x9915)
+#define DCM_InstructionText DcmTagKey(0x0018, 0x9916)
+#define DCM_InstructionDescription DcmTagKey(0x0018, 0x9917)
+#define DCM_InstructionPerformedFlag DcmTagKey(0x0018, 0x9918)
+#define DCM_InstructionPerformedDateTime DcmTagKey(0x0018, 0x9919)
+#define DCM_InstructionPerformanceComment DcmTagKey(0x0018, 0x991a)
+#define DCM_PatientPositioningInstructionSequence DcmTagKey(0x0018, 0x991b)
+#define DCM_PositioningMethodCodeSequence DcmTagKey(0x0018, 0x991c)
+#define DCM_PositioningLandmarkSequence DcmTagKey(0x0018, 0x991d)
+#define DCM_TargetFrameOfReferenceUID DcmTagKey(0x0018, 0x991e)
+#define DCM_AcquisitionProtocolElementSpecificationSequence DcmTagKey(0x0018, 0x991f)
+#define DCM_AcquisitionProtocolElementSequence DcmTagKey(0x0018, 0x9920)
+#define DCM_ProtocolElementNumber DcmTagKey(0x0018, 0x9921)
+#define DCM_ProtocolElementName DcmTagKey(0x0018, 0x9922)
+#define DCM_ProtocolElementCharacteristicsSummary DcmTagKey(0x0018, 0x9923)
+#define DCM_ProtocolElementPurpose DcmTagKey(0x0018, 0x9924)
+#define DCM_AcquisitionMotion DcmTagKey(0x0018, 0x9930)
+#define DCM_AcquisitionStartLocationSequence DcmTagKey(0x0018, 0x9931)
+#define DCM_AcquisitionEndLocationSequence DcmTagKey(0x0018, 0x9932)
+#define DCM_ReconstructionProtocolElementSpecificationSequence DcmTagKey(0x0018, 0x9933)
+#define DCM_ReconstructionProtocolElementSequence DcmTagKey(0x0018, 0x9934)
+#define DCM_StorageProtocolElementSpecificationSequence DcmTagKey(0x0018, 0x9935)
+#define DCM_StorageProtocolElementSequence DcmTagKey(0x0018, 0x9936)
+#define DCM_RequestedSeriesDescription DcmTagKey(0x0018, 0x9937)
+#define DCM_SourceAcquisitionProtocolElementNumber DcmTagKey(0x0018, 0x9938)
+#define DCM_SourceAcquisitionBeamNumber DcmTagKey(0x0018, 0x9939)
+#define DCM_SourceReconstructionProtocolElementNumber DcmTagKey(0x0018, 0x993a)
+#define DCM_ReconstructionStartLocationSequence DcmTagKey(0x0018, 0x993b)
+#define DCM_ReconstructionEndLocationSequence DcmTagKey(0x0018, 0x993c)
+#define DCM_ReconstructionAlgorithmSequence DcmTagKey(0x0018, 0x993d)
+#define DCM_ReconstructionTargetCenterLocationSequence DcmTagKey(0x0018, 0x993e)
+#define DCM_ImageFilterDescription DcmTagKey(0x0018, 0x9941)
+#define DCM_CTDIvolNotificationTrigger DcmTagKey(0x0018, 0x9942)
+#define DCM_DLPNotificationTrigger DcmTagKey(0x0018, 0x9943)
+#define DCM_AutoKVPSelectionType DcmTagKey(0x0018, 0x9944)
+#define DCM_AutoKVPUpperBound DcmTagKey(0x0018, 0x9945)
+#define DCM_AutoKVPLowerBound DcmTagKey(0x0018, 0x9946)
+#define DCM_ProtocolDefinedPatientPosition DcmTagKey(0x0018, 0x9947)
#define DCM_ContributingEquipmentSequence DcmTagKey(0x0018, 0xa001)
#define DCM_ContributionDateTime DcmTagKey(0x0018, 0xa002)
#define DCM_ContributionDescription DcmTagKey(0x0018, 0xa003)
#define DCM_RETIRED_AcquisitionsInStudy DcmTagKey(0x0020, 0x1004)
#define DCM_RETIRED_ImagesInStudy DcmTagKey(0x0020, 0x1005)
#define DCM_RETIRED_Reference DcmTagKey(0x0020, 0x1020)
+#define DCM_TargetPositionReferenceIndicator DcmTagKey(0x0020, 0x103f)
#define DCM_PositionReferenceIndicator DcmTagKey(0x0020, 0x1040)
#define DCM_SliceLocation DcmTagKey(0x0020, 0x1041)
#define DCM_RETIRED_OtherStudyNumbers DcmTagKey(0x0020, 0x1070)
#define DCM_FiducialUID DcmTagKey(0x0070, 0x031a)
#define DCM_FiducialSetSequence DcmTagKey(0x0070, 0x031c)
#define DCM_FiducialSequence DcmTagKey(0x0070, 0x031e)
+#define DCM_FiducialsPropertyCategoryCodeSequence DcmTagKey(0x0070, 0x031f)
#define DCM_GraphicLayerRecommendedDisplayCIELabValue DcmTagKey(0x0070, 0x0401)
#define DCM_BlendingSequence DcmTagKey(0x0070, 0x0402)
#define DCM_RelativeOpacity DcmTagKey(0x0070, 0x0403)
#define DCM_RecommendedDefaultValueSequence DcmTagKey(0x0082, 0x0035)
#define DCM_ConstraintViolationSignificance DcmTagKey(0x0082, 0x0036)
#define DCM_ConstraintViolationCondition DcmTagKey(0x0082, 0x0037)
+#define DCM_ModifiableConstraintFlag DcmTagKey(0x0082, 0x0038)
#define DCM_StorageMediaFileSetID DcmTagKey(0x0088, 0x0130)
#define DCM_StorageMediaFileSetUID DcmTagKey(0x0088, 0x0140)
#define DCM_IconImageSequence DcmTagKey(0x0088, 0x0200)
#define DCM_ROIElementalCompositionSequence DcmTagKey(0x3006, 0x00b6)
#define DCM_ROIElementalCompositionAtomicNumber DcmTagKey(0x3006, 0x00b7)
#define DCM_ROIElementalCompositionAtomicMassFraction DcmTagKey(0x3006, 0x00b8)
-#define DCM_AdditionalRTROIIdentificationCodeSequence DcmTagKey(0x3006, 0x00b9)
+#define DCM_RETIRED_AdditionalRTROIIdentificationCodeSequence DcmTagKey(0x3006, 0x00b9)
#define DCM_RETIRED_FrameOfReferenceRelationshipSequence DcmTagKey(0x3006, 0x00c0)
#define DCM_RETIRED_RelatedFrameOfReferenceUID DcmTagKey(0x3006, 0x00c2)
#define DCM_RETIRED_FrameOfReferenceTransformationType DcmTagKey(0x3006, 0x00c4)
const unsigned short OFM_dcmseg = 30;
const unsigned short OFM_dcmfg = 31;
const unsigned short OFM_dcmtract = 32;
-
+const unsigned short OFM_dcmpmap = 33;
// condition constants
#define UID_RETIRED_StandalonePETCurveStorage "1.2.840.10008.5.1.4.1.1.129"
#define UID_EnhancedPETImageStorage "1.2.840.10008.5.1.4.1.1.130"
#define UID_BasicStructuredDisplayStorage "1.2.840.10008.5.1.4.1.1.131"
+#define UID_CTDefinedProcedureProtocolStorage "1.2.840.10008.5.1.4.1.1.200.1"
+#define UID_CTPerformedProcedureProtocolStorage "1.2.840.10008.5.1.4.1.1.200.2"
#define UID_RTImageStorage "1.2.840.10008.5.1.4.1.1.481.1"
#define UID_RTDoseStorage "1.2.840.10008.5.1.4.1.1.481.2"
#define UID_RTStructureSetStorage "1.2.840.10008.5.1.4.1.1.481.3"
#define UID_MOVEImplantTemplateGroupInformationModel "1.2.840.10008.5.1.4.45.3"
#define UID_GETImplantTemplateGroupInformationModel "1.2.840.10008.5.1.4.45.4"
+// Defined Procedure Protocol Query/Retrieve
+#define UID_FINDDefinedProcedureProtocolInformationModel "1.2.840.10008.5.1.4.20.1"
+#define UID_MOVEDefinedProcedureProtocolInformationModel "1.2.840.10008.5.1.4.20.2"
+#define UID_GETDefinedProcedureProtocolInformationModel "1.2.840.10008.5.1.4.20.3"
+
// Print Management
#define UID_BasicFilmSessionSOPClass "1.2.840.10008.5.1.1.1"
#define UID_BasicFilmBoxSOPClass "1.2.840.10008.5.1.1.2"
**
** User: joergr
** Host: thinkpad
-** Date: 2016-06-13 09:57:11
+** Date: 2016-10-04 12:15:57
** Prog: /home/joergr/Source/dcmtk-full/public/dcmdata/libsrc/mkdictbi
**
** From: ../data/dicom.dic
EVR_SH, "TimezoneOffsetFromUTC", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0008, 0x0220, 0x0008, 0x0220,
+ EVR_SQ, "ResponsibleGroupCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x0221, 0x0008, 0x0221,
+ EVR_CS, "EquipmentModality", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x0222, 0x0008, 0x0222,
+ EVR_LO, "ManufacturerRelatedModelGroup", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
, { 0x0008, 0x0300, 0x0008, 0x0300,
EVR_SQ, "PrivateDataElementCharacteristicsSequence", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
EVR_CS, "DeidentificationAction", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0008, 0x0308, 0x0008, 0x0308,
+ EVR_US, "PrivateDataElement", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x0309, 0x0008, 0x0309,
+ EVR_UL, "PrivateDataElementValueMultiplicity", 1, 3, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x030a, 0x0008, 0x030a,
+ EVR_CS, "PrivateDataElementValueRepresentation", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x030b, 0x0008, 0x030b,
+ EVR_UL, "PrivateDataElementNumberOfItems", 1, 2, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x030c, 0x0008, 0x030c,
+ EVR_UC, "PrivateDataElementName", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x030d, 0x0008, 0x030d,
+ EVR_UC, "PrivateDataElementKeyword", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x030e, 0x0008, 0x030e,
+ EVR_UT, "PrivateDataElementDescription", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x030f, 0x0008, 0x030f,
+ EVR_UT, "PrivateDataElementEncoding", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0008, 0x0310, 0x0008, 0x0310,
+ EVR_SQ, "PrivateDataElementDefinitionSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
, { 0x0008, 0x1000, 0x0008, 0x1000,
EVR_AE, "RETIRED_NetworkID", 1, 1, "DICOM/retired",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
EVR_SQ, "PatientSizeCodeSequence", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0010, 0x1022, 0x0010, 0x1022,
+ EVR_DS, "PatientBodyMassIndex", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0010, 0x1023, 0x0010, 0x1023,
+ EVR_DS, "MeasuredAPDimension", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0010, 0x1024, 0x0010, 0x1024,
+ EVR_DS, "MeasuredLateralDimension", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
, { 0x0010, 0x1030, 0x0010, 0x1030,
EVR_DS, "PatientWeight", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
EVR_CS, "ConsentForDistributionFlag", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0012, 0x0086, 0x0012, 0x0086,
+ EVR_DA, "EthicsCommitteeApprovalEffectivenessStartDate", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0012, 0x0087, 0x0012, 0x0087,
+ EVR_DA, "EthicsCommitteeApprovalEffectivenessEndDate", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
#ifdef ENABLE_PRIVATE_TAGS
, { 0x0013, 0x0000, 0x0013, 0x0000,
EVR_LT, "ModifyingPhysician", 1, 1, "PrivateTag",
EVR_LO, "GantryID", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0018, 0x1009, 0x0018, 0x1009,
+ EVR_UT, "UniqueDeviceIdentifier", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x100a, 0x0018, 0x100a,
+ EVR_SQ, "UDISequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
, { 0x0018, 0x1010, 0x0018, 0x1010,
EVR_LO, "SecondaryCaptureDeviceID", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
, { 0x0018, 0x9323, 0x0018, 0x9323,
- EVR_CS, "ExposureModulationType", 1, 1, "DICOM",
+ EVR_CS, "ExposureModulationType", 1, -1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
, { 0x0018, 0x9324, 0x0018, 0x9324,
EVR_xs, "ZeroVelocityPixelValue", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0018, 0x9900, 0x0018, 0x9900,
+ EVR_LO, "ReferenceLocationLabel", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9901, 0x0018, 0x9901,
+ EVR_UT, "ReferenceLocationDescription", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9902, 0x0018, 0x9902,
+ EVR_SQ, "ReferenceBasisCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9903, 0x0018, 0x9903,
+ EVR_SQ, "ReferenceGeometryCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9904, 0x0018, 0x9904,
+ EVR_DS, "OffsetDistance", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9905, 0x0018, 0x9905,
+ EVR_CS, "OffsetDirection", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9906, 0x0018, 0x9906,
+ EVR_SQ, "PotentialScheduledProtocolCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9907, 0x0018, 0x9907,
+ EVR_SQ, "PotentialRequestedProcedureCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9908, 0x0018, 0x9908,
+ EVR_UC, "PotentialReasonsForProcedure", 1, -1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9909, 0x0018, 0x9909,
+ EVR_SQ, "PotentialReasonsForProcedureCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x990a, 0x0018, 0x990a,
+ EVR_UC, "PotentialDiagnosticTasks", 1, -1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x990b, 0x0018, 0x990b,
+ EVR_SQ, "ContraindicationsCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x990c, 0x0018, 0x990c,
+ EVR_SQ, "ReferencedDefinedProtocolSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x990d, 0x0018, 0x990d,
+ EVR_SQ, "ReferencedPerformedProtocolSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x990e, 0x0018, 0x990e,
+ EVR_SQ, "PredecessorProtocolSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x990f, 0x0018, 0x990f,
+ EVR_UT, "ProtocolPlanningInformation", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9910, 0x0018, 0x9910,
+ EVR_UT, "ProtocolDesignRationale", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9911, 0x0018, 0x9911,
+ EVR_SQ, "PatientSpecificationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9912, 0x0018, 0x9912,
+ EVR_SQ, "ModelSpecificationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9913, 0x0018, 0x9913,
+ EVR_SQ, "ParametersSpecificationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9914, 0x0018, 0x9914,
+ EVR_SQ, "InstructionSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9915, 0x0018, 0x9915,
+ EVR_US, "InstructionIndex", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9916, 0x0018, 0x9916,
+ EVR_LO, "InstructionText", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9917, 0x0018, 0x9917,
+ EVR_UT, "InstructionDescription", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9918, 0x0018, 0x9918,
+ EVR_CS, "InstructionPerformedFlag", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9919, 0x0018, 0x9919,
+ EVR_DT, "InstructionPerformedDateTime", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x991a, 0x0018, 0x991a,
+ EVR_UT, "InstructionPerformanceComment", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x991b, 0x0018, 0x991b,
+ EVR_SQ, "PatientPositioningInstructionSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x991c, 0x0018, 0x991c,
+ EVR_SQ, "PositioningMethodCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x991d, 0x0018, 0x991d,
+ EVR_SQ, "PositioningLandmarkSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x991e, 0x0018, 0x991e,
+ EVR_UI, "TargetFrameOfReferenceUID", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x991f, 0x0018, 0x991f,
+ EVR_SQ, "AcquisitionProtocolElementSpecificationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9920, 0x0018, 0x9920,
+ EVR_SQ, "AcquisitionProtocolElementSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9921, 0x0018, 0x9921,
+ EVR_US, "ProtocolElementNumber", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9922, 0x0018, 0x9922,
+ EVR_LO, "ProtocolElementName", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9923, 0x0018, 0x9923,
+ EVR_UT, "ProtocolElementCharacteristicsSummary", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9924, 0x0018, 0x9924,
+ EVR_UT, "ProtocolElementPurpose", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9930, 0x0018, 0x9930,
+ EVR_CS, "AcquisitionMotion", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9931, 0x0018, 0x9931,
+ EVR_SQ, "AcquisitionStartLocationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9932, 0x0018, 0x9932,
+ EVR_SQ, "AcquisitionEndLocationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9933, 0x0018, 0x9933,
+ EVR_SQ, "ReconstructionProtocolElementSpecificationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9934, 0x0018, 0x9934,
+ EVR_SQ, "ReconstructionProtocolElementSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9935, 0x0018, 0x9935,
+ EVR_SQ, "StorageProtocolElementSpecificationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9936, 0x0018, 0x9936,
+ EVR_SQ, "StorageProtocolElementSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9937, 0x0018, 0x9937,
+ EVR_LO, "RequestedSeriesDescription", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9938, 0x0018, 0x9938,
+ EVR_US, "SourceAcquisitionProtocolElementNumber", 1, -1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9939, 0x0018, 0x9939,
+ EVR_US, "SourceAcquisitionBeamNumber", 1, -1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x993a, 0x0018, 0x993a,
+ EVR_US, "SourceReconstructionProtocolElementNumber", 1, -1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x993b, 0x0018, 0x993b,
+ EVR_SQ, "ReconstructionStartLocationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x993c, 0x0018, 0x993c,
+ EVR_SQ, "ReconstructionEndLocationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x993d, 0x0018, 0x993d,
+ EVR_SQ, "ReconstructionAlgorithmSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x993e, 0x0018, 0x993e,
+ EVR_SQ, "ReconstructionTargetCenterLocationSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9941, 0x0018, 0x9941,
+ EVR_UT, "ImageFilterDescription", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9942, 0x0018, 0x9942,
+ EVR_FD, "CTDIvolNotificationTrigger", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9943, 0x0018, 0x9943,
+ EVR_FD, "DLPNotificationTrigger", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9944, 0x0018, 0x9944,
+ EVR_CS, "AutoKVPSelectionType", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9945, 0x0018, 0x9945,
+ EVR_FD, "AutoKVPUpperBound", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9946, 0x0018, 0x9946,
+ EVR_FD, "AutoKVPLowerBound", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
+ , { 0x0018, 0x9947, 0x0018, 0x9947,
+ EVR_CS, "ProtocolDefinedPatientPosition", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
, { 0x0018, 0xa001, 0x0018, 0xa001,
EVR_SQ, "ContributingEquipmentSequence", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
EVR_LO, "RETIRED_Reference", 1, -1, "DICOM/retired",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0020, 0x103f, 0x0020, 0x103f,
+ EVR_LO, "TargetPositionReferenceIndicator", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
, { 0x0020, 0x1040, 0x0020, 0x1040,
EVR_LO, "PositionReferenceIndicator", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
EVR_SQ, "FiducialSequence", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0070, 0x031f, 0x0070, 0x031f,
+ EVR_SQ, "FiducialsPropertyCategoryCodeSequence", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
, { 0x0070, 0x0401, 0x0070, 0x0401,
EVR_US, "GraphicLayerRecommendedDisplayCIELabValue", 3, 3, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
EVR_UT, "ConstraintViolationCondition", 1, 1, "DICOM",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
+ , { 0x0082, 0x0038, 0x0082, 0x0038,
+ EVR_CS, "ModifiableConstraintFlag", 1, 1, "DICOM",
+ DcmDictRange_Unspecified, DcmDictRange_Unspecified,
+ NULL }
#ifdef ENABLE_PRIVATE_TAGS
, { 0x0087, 0x0010, 0x0087, 0x0010,
EVR_CS, "MediaType", 1, 1, "PrivateTag",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
, { 0x3006, 0x00b9, 0x3006, 0x00b9,
- EVR_SQ, "AdditionalRTROIIdentificationCodeSequence", 1, 1, "DICOM",
+ EVR_SQ, "RETIRED_AdditionalRTROIIdentificationCodeSequence", 1, 1, "DICOM/retired",
DcmDictRange_Unspecified, DcmDictRange_Unspecified,
NULL }
, { 0x3006, 0x00c0, 0x3006, 0x00c0,
{ UID_ComputedRadiographyImageStorage, "ComputedRadiographyImageStorage" },
{ UID_ContentAssessmentResultsStorage, "ContentAssessmentResultsStorage" },
{ UID_CornealTopographyMapStorage, "CornealTopographyMapStorage" },
+ { UID_CTDefinedProcedureProtocolStorage, "CTDefinedProcedureProtocolStorage" },
{ UID_CTImageStorage, "CTImageStorage" },
+ { UID_CTPerformedProcedureProtocolStorage, "CTPerformedProcedureProtocolStorage" },
{ UID_DeformableSpatialRegistrationStorage, "DeformableSpatialRegistrationStorage" },
{ UID_DigitalIntraOralXRayImageStorageForPresentation, "DigitalIntraOralXRayImageStorageForPresentation" },
{ UID_DigitalIntraOralXRayImageStorageForProcessing, "DigitalIntraOralXRayImageStorageForProcessing" },
{ UID_MOVEImplantTemplateGroupInformationModel, "MOVEImplantTemplateGroupInformationModel" },
{ UID_GETImplantTemplateGroupInformationModel, "GETImplantTemplateGroupInformationModel" },
+ // Defined Procedure Protocol Query/Retrieve
+ { UID_FINDDefinedProcedureProtocolInformationModel, "FINDDefinedProcedureProtocolInformationModel" },
+ { UID_MOVEDefinedProcedureProtocolInformationModel, "MOVEDefinedProcedureProtocolInformationModel" },
+ { UID_GETDefinedProcedureProtocolInformationModel, "GETDefinedProcedureProtocolInformationModel" },
+
// Print
{ UID_BasicAnnotationBoxSOPClass, "BasicAnnotationBoxSOPClass" },
{ UID_BasicColorImageBoxSOPClass, "BasicColorImageBoxSOPClass" },
UID_ComputedRadiographyImageStorage,
UID_ContentAssessmentResultsStorage,
UID_CornealTopographyMapStorage,
+ UID_CTDefinedProcedureProtocolStorage,
UID_CTImageStorage,
+ UID_CTPerformedProcedureProtocolStorage,
UID_DeformableSpatialRegistrationStorage,
UID_DigitalIntraOralXRayImageStorageForPresentation,
UID_DigitalIntraOralXRayImageStorageForProcessing,
// UID_CompositingPlanarMPRVolumetricPresentationStateStorage,
// UID_ContentAssessmentResultsStorage,
// UID_CornealTopographyMapStorage,
+// UID_CTDefinedProcedureProtocolStorage,
+// UID_CTPerformedProcedureProtocolStorage,
// UID_ExtensibleSRStorage,
// UID_GrayscalePlanarMPRVolumetricPresentationStateStorage
// UID_LegacyConvertedEnhancedCTImageStorage,
{ UID_ComputedRadiographyImageStorage, "CR", 2048 * 2048 * 2 },
{ UID_ContentAssessmentResultsStorage, "AS", 4096 },
{ UID_CornealTopographyMapStorage, "CM", 512 * 512 },
+ { UID_CTDefinedProcedureProtocolStorage, "PPd", 4096 },
{ UID_CTImageStorage, "CT", 512 * 512 * 2 },
+ { UID_CTPerformedProcedureProtocolStorage, "PPp", 4096 },
{ UID_DeformableSpatialRegistrationStorage, "RGd", 4096 },
{ UID_DigitalIntraOralXRayImageStorageForPresentation, "DXo", 1024 * 1024 * 2 },
{ UID_DigitalIntraOralXRayImageStorageForProcessing, "DPo", 1024 * 1024 * 2 },
*/
virtual OFCondition check() const;
- /** Convenience function to add item representing reference to a file. No
+ /** Convenience function to add item representing reference to an object. No
* restrictions are set which frames or segments from this image has been
* actually used. However, such information could be added to the source
* image item later by modifying the resulting item being handed back to the
* caller.
- * @param file Files that should be referenced by their UID, must be readable.
- * @param purposeOfReference Code representing the purpose of reference
- * (Defined CID 7202)
- * @param resultSourceImageItem The created derivation image item if
- * successful, NULL otherwise
- * @return EC_Normal if adding works, error code otherwise
+ * @param file Files that should be referenced by their UID, must be readable.
+ * @param purposeOfReference Code representing the purpose of reference
+ * (Defined CID 7202)
+ * @param resultSourceImageItem The created derivation image item if
+ * successful, NULL otherwise
+ * @return EC_Normal if adding works, error code otherwise
*/
virtual OFCondition addSourceImageItem(const OFString& file,
const CodeSequenceMacro& purposeOfReference,
SourceImageItem*& resultSourceImageItem);
- /** Convenience function to add items representing references to some files
+ /** Convenience function to add item representing reference to an object. No
+ * restrictions are set which frames or segments from this image has been
+ * actually used. However, such information could be added to the source
+ * image item later by modifying the resulting item being handed back to the
+ * caller.
+ * @param dataset DICOM dataset that should be referenced by their UID
+ * @param purposeOfReference Code representing the purpose of reference
+ * (Defined CID 7202)
+ * @param resultSourceImageItem The created derivation image item if
+ * successful, NULL otherwise
+ * @return EC_Normal if adding works, error code otherwise
+ */
+ virtual OFCondition addSourceImageItem(DcmDataset *dataset,
+ const CodeSequenceMacro& purposeOfReference,
+ SourceImageItem*& resultSourceImageItem);
+
+ /** Convenience function to add items representing references to some objects
* which all have the same purpose of reference (code). No restrictions are
* set which frames or segments from those images have been actually used.
* However, such information could be added to the source image item later by
- * modifying the resulting item handed back to the caller.
- * @param files List of files that should be referenced by their UIDs.
- * @param purposeOfReference Code representing the purpose of reference
- * (Defined CID 7202)
- * @param resultSourceImageItems The created derivation image items (one per
- * file) if successful, NULL otherwise
- * @param skipFileErrors If OFTrue, then files that could not be added will
- * not lead to error.
- * @return EC_Normal if adding works, error code otherwise
+ * modifying the resulting item handed back to the caller.
+ * @param files List of files that should be referenced by their UIDs.
+ * @param purposeOfReference Code representing the purpose of reference
+ * (Defined CID 7202)
+ * @param resultSourceImageItems The created derivation image items (one per
+ * file) if successful, NULL otherwise
+ * @param skipFileErrors If OFTrue, then files that could not be added will
+ * not lead to error.
+ * @return EC_Normal if adding works, error code otherwise
*/
virtual OFCondition addSourceImageItems(const OFVector<OFString>& files,
const CodeSequenceMacro& purposeOfReference,
OFVector<SourceImageItem*>& resultSourceImageItems,
const OFBool skipFileErrors = OFFalse);
+ /** Convenience function to add items representing references to some objects
+ * which all have the same purpose of reference (code). No restrictions are
+ * set which frames or segments from those images have been actually used.
+ * However, such information could be added to the source image item later by
+ * modifying the resulting item handed back to the caller.
+ * @param datasets List of datasets that should be referenced by their UIDs.
+ * @param purposeOfReference Code representing the purpose of reference
+ * (Defined CID 7202)
+ * @param resultSourceImageItems The created derivation image items (one per
+ * file) if successful, NULL otherwise
+ * @param skipErrors If OFTrue, then files that could not be added will
+ * not lead to error.
+ * @return EC_Normal if adding works, error code otherwise
+ */
+ virtual OFCondition addSourceImageItems(const OFVector<DcmDataset*>& datasets,
+ const CodeSequenceMacro& purposeOfReference,
+ OFVector<SourceImageItem*>& resultSourceImageItems,
+ const OFBool skipErrors = OFFalse);
+
/** Get Derivation Description
* @param value Reference to variable in which the value should be stored
* @param pos Index of the value to get (0..vm-1), -1 for all components
/** Set one of the Dimension Index Values
* @param value Value that should be set (lowest index starts with 1)
- * @param pos The position of the value that should be set (lowest index
+ * @param dim The position of the value that should be set (lowest index
* starts with 0), i.e.\ select the 1st, 2nd, ..nth dimension
* @param checkValue Check 'value'. Not evaluated (here for consistency
* with other setter functions).
* @return EC_Normal, if value was set, error otherwise
*/
virtual OFCondition setDimensionIndexValues(const Uint32& value,
- const unsigned int pos,
+ const unsigned int dim,
const OFBool checkValue = OFTrue);
/** Set Temporal Position Index
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmfg
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Class for managing Frame Anatomy Functional Group
+ *
+ */
+
+#ifndef FGFRAMEANATOMY_H
+#define FGFRAMEANATOMY_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcitem.h"
+#include "dcmtk/dcmiod/iodmacro.h"
+#include "dcmtk/dcmfg/fgbase.h"
+
+/** Class representing the Frame Anatomy Functional Group Macro
+ */
+class DCMTK_DCMFG_EXPORT FGFrameAnatomy : public FGBase
+{
+public:
+
+ /** Enumerated values for attribute "Laterality"
+ */
+ enum LATERALITY
+ {
+ /// Undefined (e.g.\ value not set)
+ LATERALITY_UNDEFINED,
+ /// Invalid Laterality, e.g. when invalid value is read from file
+ LATERALITY_INVALID,
+ /// Right body part
+ LATERALITY_R,
+ /// Left body part
+ LATERALITY_L,
+ /// Unpaired body part
+ LATERALITY_UNPAIRED,
+ /// Both, left and right
+ LATERALITY_BOTH
+ };
+
+ /** Constructor, creates empty Frame Anatomy Functional Group
+ */
+ FGFrameAnatomy();
+
+ /** Virtual destructor, frees memory
+ */
+ virtual ~FGFrameAnatomy();
+
+ /** Returns a deep copy of this object
+ * @return Deep copy of this object
+ */
+ virtual FGBase *clone() const;
+
+ /** Returns shared type of this group (can be shared or per-frame)
+ * @return Always returns DcmFGTypes::EFGS_BOTH;
+ */
+ virtual DcmFGTypes::E_FGSharedType getSharedType() const {return DcmFGTypes::EFGS_BOTH;}
+
+ /** Clear all data
+ */
+ virtual void clearData();
+
+ /** Check whether data in functional group is valid
+ * @return EC_Normal if data is valid, error otherwise
+ */
+ virtual OFCondition check() const;
+
+ /** Read functional group from given item
+ * @param item The item to read from, must contain Frame Anatomy Sequence
+ * @return EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& item);
+
+ /** Write functional group to given item
+ * @param item The item to write Frame Anatomy Sequence to
+ * @return EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& item);
+
+ // --- get() functionality ---
+
+ /** Get Laterality
+ * @param value Reference to variable in which the value should be stored
+ * @return EC_Normal if successful, an error code otherwise (i.e. if
+ * value is LATERALITY_INVALID).
+ */
+ virtual OFCondition getLaterality(LATERALITY& value);
+
+ /** Get anatomy information
+ * @return Reference to anatomic information
+ */
+ virtual GeneralAnatomyMacro& getAnatomy();
+
+ // --- set() functionality ---
+
+ /** Set Laterality
+ * @param value Value to be set
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLaterality(const LATERALITY& value);
+
+ /** Comparison operator that compares the normalized value of this object
+ * with a given object of the same type, i.e.\ the elements within both
+ * functional groups (this and rhs parameter) are compared by value!
+ * Both objects (this and rhs) need to have the same type (i.e.\ both
+ * FGUnknown) to be comparable. This function is used in order
+ * to decide whether a functional group already exists, or is new. This
+ * is used in particular to find out whether a given functional group
+ * can be shared (i.e.\ the same information already exists as shared
+ * functional group) or is different from the same shared group. In that
+ * case the shared functional group must be distributed into per-frame
+ * functional groups, instead. The exact implementation for implementing
+ * the comparison is not relevant. However, it must be a comparison
+ * by value.
+ * @param rhs the right hand side of the comparison
+ * @return 0 if the object values are equal.
+ * -1 if either the value of the first component that does not match
+ * is lower in the this object, or all compared components match
+ * but this component is shorter. Also returned if this type and
+ * rhs type (DcmFGTypes::E_FGType) do not match.
+ * 1 if either the value of the first component that does not match
+ * is greater in this object, or all compared components match
+ * but this component is longer.
+ */
+ virtual int compare(const FGBase& rhs) const;
+
+ static LATERALITY str2Laterality(const OFString& lat);
+
+ static OFString laterality2Str(const LATERALITY lat);
+
+ static OFBool isLateralityValid(const LATERALITY lat);
+
+private:
+
+ /* Content of Frame Anatomy Macro */
+
+ /// Frame Laterality (DS, VM 1, Required type 1)
+ LATERALITY m_FrameLaterality;
+
+ /// General Anatomy Mandatory Macro
+ GeneralAnatomyMacro m_Anatomy;
+};
+
+#endif // FGFRAMEANATOMY_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmfg
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Identity Pixel Value Transformation Functional Group
+ *
+ */
+
+#ifndef FGIDENTPIXELTRANSFORM_H
+#define FGIDENTPIXELTRANSFORM_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcitem.h"
+#include "dcmtk/dcmfg/fgbase.h"
+#include "dcmtk/dcmdata/dcvrds.h"
+#include "dcmtk/dcmdata/dcvrlo.h"
+
+
+/** Class representing the Identity Pixel Value Transformation Functional Group Macro.
+ */
+class DCMTK_DCMFG_EXPORT FGIdentityPixelValueTransformation : public FGBase
+{
+public:
+
+ /** Constructor, creates Identity Pixel Value Transformation Functional Group.
+ * All values (Rescale Slope, Intercept and Type) are set to their only valid
+ * enumerated value listed in the standard, i.e. slope = 1, intercept = 0 and
+ * type = "US".
+ */
+ FGIdentityPixelValueTransformation();
+
+ /** Destructor, frees memory
+ */
+ virtual ~FGIdentityPixelValueTransformation();
+
+ /** Returns a deep copy of this object
+ * @return Deep copy of this object
+ */
+ virtual FGBase *clone() const;
+
+ /** Get shared type of this functional group (can be both, per-frame and
+ * shared)
+ * @return Always returns EFGS_BOTH
+ */
+ virtual DcmFGTypes::E_FGSharedType getSharedType() const {return DcmFGTypes::EFGS_BOTH;}
+
+ /** Clears all data
+ */
+ virtual void clearData();
+
+ /** Check whether functional group contains valid data
+ * @return EC_Normal if data is valid, error otherwise
+ */
+ virtual OFCondition check() const;
+
+ /** Read functional group from given item, i.e.\ read Identity Pixel Value
+ * Transformation Sequence. Clears existing data before reading.
+ * @param item The item to read from
+ * @return EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& item);
+
+ /** Write functional group to given item, i.e.\ write Identity Pixel Value Transformation Sequence
+ * @param item The item to write to
+ * @return EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& item);
+
+ /** Get RescaleIntercept
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getRescaleIntercept(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get RescaleSlope
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getRescaleSlope(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get RescaleType
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getRescaleType(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Comparison operator that compares the normalized value of this object
+ * with a given object of the same type, i.e.\ the elements within both
+ * functional groups (this and rhs parameter) are compared by value!
+ * Both objects (this and rhs) need to have the same type (i.e.\ both
+ * FGUnknown) to be comparable. This function is used in order
+ * to decide whether a functional group already exists, or is new. This
+ * is used in particular to find out whether a given functional group
+ * can be shared (i.e.\ the same information already exists as shared
+ * functional group) or is different from the same shared group. In that
+ * case the shared functional group must be distributed into per-frame
+ * functional groups, instead. The exact implementation for implementing
+ * the comparison is not relevant. However, it must be a comparison
+ * by value.
+ * @param rhs the right hand side of the comparison
+ * @return 0 if the object values are equal.
+ * -1 if either the value of the first component that does not match
+ * is lower in the this object, or all compared components match
+ * but this component is shorter. Also returned if this type and
+ * rhs type (DcmFGTypes::E_FGType) do not match.
+ * 1 if either the value of the first component that does not match
+ * is greater in this object, or all compared components match
+ * but this component is longer.
+ */
+ virtual int compare(const FGBase& rhs) const;
+
+protected:
+
+ /** Set RescaleIntercept. Hidden from user since value must always be equal
+ * to 1 (automatically set on write).
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setRescaleIntercept(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set RescaleSlope. Hidden from user since value must always be equal
+ * to 1 (automatically set on write).
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setRescaleSlope(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set RescaleType. Hidden from user since value must always be equal
+ * to "US" for "unspecified" (automatically set on write).
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setRescaleType(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+private:
+
+ /* Content of Identity Pixel Value Transformation Functional Group Macro */
+
+ /// RescaleIntercept (DS, VM 1, Required type 1)
+ DcmDecimalString m_RescaleIntercept;
+
+ /// RescaleSlope (DS, VM 1, Required type 1)
+ DcmDecimalString m_RescaleSlope;
+
+ /// RescaleType (LO, VM 1, Required type 1)
+ DcmLongString m_RescaleType;
+};
+
+#endif // FGIDENTPIXELTRANSFORM_H
/** Add functional group that should be shared for all frames. This will
* delete all per-frame groups of the same type if existing.
- * @param group The group to be added (copy is performed)
+ * @param group The group to be added. The group is copied.
* @return EC_Normal, if adding was successful, error otherwise
*/
virtual OFCondition addShared(const FGBase& group);
* overwritten.
* @param frameNo The frame number this group should be added for (starts
* from 0)
- * @param group The group to be added
+ * @param group The group to be added. The group is copied when adding,
+ * so the ownership stays with the caller, no matter what the
+ * method returns.
* @return EC_Normal, if adding was successful, error otherwise
*/
virtual OFCondition addPerFrame(const Uint32 frameNo,
virtual OFBool deleteShared(const DcmFGTypes::E_FGType fgType);
/** Deletes per-frame functional group of the given type for a specific frame
- * @param frameNo The frame number for the functional group of interest
+ * @param frameNo The frame number for the functional group of interest.
+ * First frame is frame 0.
* @param fgType The type of functional group to delete
* @return OFTrue if group existed and could be deleted, OFFalse (group did
* not exist) otherwise
/** Deletes per-frame functional group for all frames
* @param fgType The type of functional group to delete
* @return Number of per-frame groups deleted (usually equal to number of
- * images)
+ * frames)
*/
size_t deletePerFrame(const DcmFGTypes::E_FGType fgType);
+ /** Deletes all functional groups for a specific frame
+ * @param frameNo The frame number whose functional groups should be deleted.
+ * First frame is frame 0.
+ * @return Number of per-frame groups deleted for this frame
+ */
+ size_t deleteFrame(const Uint32 frameNo);
+
protected:
/** Get shared functional group based on its type
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmfg
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Parametric Map Frame Type Functional Group
+ *
+ */
+
+#ifndef FGPARAMETRICMAPFRAMETYPE_H
+#define FGPARAMETRICMAPFRAMETYPE_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcitem.h"
+#include "dcmtk/dcmfg/fgbase.h"
+#include "dcmtk/dcmdata/dcvrcs.h"
+
+/** Class representing the Parametric Map Frame Type Functional Group Macro.
+ */
+class DCMTK_DCMFG_EXPORT FGParametricMapFrameType : public FGBase
+{
+public:
+ /** Constructor, creates empty Parametric Map Frame Type Functional Group
+ */
+ FGParametricMapFrameType();
+
+ /** Destructor, frees memory
+ */
+ virtual ~FGParametricMapFrameType();
+
+ /** Returns a deep copy of this object
+ * @return Deep copy of this object
+ */
+ virtual FGBase *clone() const;
+
+ /** Get shared type of this functional group (can be both, per-frame and
+ * shared)
+ * @return Always returns EFGS_BOTH
+ */
+ virtual DcmFGTypes::E_FGSharedType getSharedType() const {return DcmFGTypes::EFGS_BOTH;}
+
+ /** Clears all data
+ */
+ virtual void clearData();
+
+ /** Check whether functional group contains valid data
+ * @return EC_Normal if data is valid, error otherwise
+ */
+ virtual OFCondition check() const;
+
+ /** Read functional group from given item, i.e.\ read Parametric Map Frame Type Sequence
+ * @param item The item to read from
+ * @return EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& item);
+
+ /** Write functional group to given item, i.e.\ write Parametric Map Frame Type Sequence
+ * @param item The item to write to
+ * @return EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& item);
+
+ /** Get FrameType
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getFrameType(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Set FrameType
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (4) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setFrameType(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Comparison operator that compares the normalized value of this object
+ * with a given object of the same type, i.e.\ the elements within both
+ * functional groups (this and rhs parameter) are compared by value!
+ * Both objects (this and rhs) need to have the same type (i.e.\ both
+ * FGUnknown) to be comparable. This function is used in order
+ * to decide whether a functional group already exists, or is new. This
+ * is used in particular to find out whether a given functional group
+ * can be shared (i.e.\ the same information already exists as shared
+ * functional group) or is different from the same shared group. In that
+ * case the shared functional group must be distributed into per-frame
+ * functional groups, instead. The exact implementation for implementing
+ * the comparison is not relevant. However, it must be a comparison
+ * by value.
+ * @param rhs the right hand side of the comparison
+ * @return 0 if the object values are equal.
+ * -1 if either the value of the first component that does not match
+ * is lower in the this object, or all compared components match
+ * but this component is shorter. Also returned if this type and
+ * rhs type (DcmFGTypes::E_FGType) do not match.
+ * 1 if either the value of the first component that does not match
+ * is greater in this object, or all compared components match
+ * but this component is longer.
+ */
+ virtual int compare(const FGBase& rhs) const;
+
+private:
+
+ /* Content of Parametric Map Frame Type Functional Group Macro */
+
+ /// FrameType (CS, VM 4, Required type 1)
+ DcmCodeString m_FrameType;
+};
+
+#endif // FGPARAMETRICMAPFRAMETYPE_H
#include "dcmtk/dcmdata/dcitem.h"
#include "dcmtk/dcmiod/modbase.h"
#include "dcmtk/dcmiod/iodmacro.h"
+#include "dcmtk/dcmiod/iodcontentitemmacro.h"
/** Class representing the Real World Value Mapping Functional Group that
* specifies the mapping of stored values to associated Real World values
* LUT Explanation (LO, 1, 1)
* LUT Label (SH, 1, 1)
* Measurement Units Code Sequence (SQ, 1, 1)
- * Not yet supported: Quantity Definition Sequence (SQ, 1, 3)
+ * Quantity Definition Sequence (SQ, 1, 3)
*/
class DCMTK_DCMFG_EXPORT FGRealWorldValueMapping::RWVMItem : public IODComponent
{
*/
RWVMItem(IODComponent* parent = NULL);
+ /** Copy Constructor
+ * @param rhs The item to copy from
+ */
+ RWVMItem(const RWVMItem& rhs);
+
/** Clone this class (perform deep copy)
* @return Clone of this class or NULL (e.g.\ if memory exhausted)
*/
virtual OFCondition getRealWorldValueLastValueMapped(Sint32 &value,
const unsigned long pos = 0) const;
+ /** Get Double Float Real World Value First Value Mapped
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDoubleFloatRealWorldValueFirstValueMapped(Float64& value,
+ const unsigned long pos = 0) const;
+
+ /** Get Double Float Real World Value Last Value Mapped
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDoubleFloatRealWorldValueLastValueMapped(Float64& value,
+ const unsigned long pos = 0) const;
+
/** Get Real World Value LUT Data
* @param value Reference to variable in which the value should be stored
* @param pos Index of the value to get (0..vm-1)
*/
virtual CodeSequenceMacro& getMeasurementUnitsCode();
+ /** Get a reference to the entire ConceptNameCodeSequence, including items
+ * exceeding the value multiplicity restriction of "1"
+ * @return a reference to the entire ConceptNameCodeSequence
+ */
+ virtual OFVector<ContentItemMacro*>& getEntireQuantityDefinitionSequence();
+
// --- set() functionality ---
/** Set Real World Value First Value Mapped
* if enabled
* @return EC_Normal if successful, an error code otherwise
*/
- virtual OFCondition setRealWorldValueFirstValueMappedUnsigned(const Uint16 &value,
+ virtual OFCondition setRealWorldValueFirstValueMappedUnsigned(const Uint16 value,
const OFBool checkValue = OFTrue);
/** Set Real World Value First Value Mapped
* if enabled
* @return EC_Normal if successful, an error code otherwise
*/
- virtual OFCondition setRealWorldValueLastValueMappedUnsigned(const Uint16 &value,
+ virtual OFCondition setRealWorldValueLastValueMappedUnsigned(const Uint16 value,
const OFBool checkValue = OFTrue);
/** Set Real World Value Last Value Mapped
* @return EC_Normal if successful, an error code otherwise
*/
virtual OFCondition setRealWorldValueLastValueMappedSigned(const Sint16 &value,
- const OFBool checkValue = OFTrue);
+ const OFBool checkValue = OFTrue);
+
+ /** Set Double Float Real World Value First Value Mapped
+ * @param value Value to be set
+ * @param checkValue Check 'value'. Does nothing, only for consistency with
+ * other set() functions.
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDoubleFloatRealWorldValueFirstValueMapped(const Float64 value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Double Float Real World Value Last Value Mapped
+ * @param value Value to be set
+ * @param checkValue Check 'value'. Does nothing, only for consistency with
+ * other set() functions.
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDoubleFloatRealWorldValueLastValueMapped(const Float64 value,
+ const OFBool checkValue = OFTrue);
/** Set Real World Value Intercept
* @param value Value to be set
* with other setter functions).
* @return EC_Normal if successful, an error code otherwise
*/
- virtual OFCondition setRealWorldValueIntercept(const Float64& value,
+ virtual OFCondition setRealWorldValueIntercept(const Float64 value,
const OFBool checkValue = OFTrue);
/** Set Real World Value Slope
* with other setter functions).
* @return EC_Normal if successful, an error code otherwise
*/
- virtual OFCondition setRealWorldValueSlope(const Float64& value,
+ virtual OFCondition setRealWorldValueSlope(const Float64 value,
const OFBool checkValue = OFTrue);
/** Set Real World Value LUT Data
/// Measurement Units Code Sequence
CodeSequenceMacro m_MeasurementUnitsCode;
- /// TODO Content Item Macro for Quantity Definition Sequence
+ /// Quantity Definition Sequence
+ OFVector<ContentItemMacro*> m_QuantityDefinitionSequence;
};
#endif // FGREALWORLDVALUEMAPPING_H
* constant definitions *
*-----------------------*/
-/* Specific error conditions for module dcmfg.(TODO)
+/* Specific error conditions for module dcmfg.
* These error codes can be used in addition to the general purpose
* codes defined in module dcmdata.
*/
EFG_FRAMEPIXELSHIFT,
/// "Frame VOI LUT" or "Frame VOI LUT with LUT" Macro (share same starting sequence)
EFG_FRAMEVOILUTMETA,
+ /// Identity Pixel Value Transformation
+ EFG_IDENTITYPIXELVALUETRANSFORMATION,
/// Image Data Type
EFG_IMAGEDATATYPE,
/// Irradiation Event Identification
EFG_IRRADIATIONEVENTIDENT,
+ /// Parametric Map Frame Type
+ EFG_PARAMETRICMAPFRAMETYPE,
/// Patient Orientation in Frame
EFG_PATIENTORIENTINFRAME,
/// Patient Physiological State
*/
virtual ~FGStack();
- // TODO add sorted iterators using views, for example
-
/** Return const iterator to first frame (not sorted after stack position)
* @return Const iterator to first frame
*/
/// More than one frame can have the same in-stack position
OFMap<Uint32, Uint32> m_FrameNumbers;
- // TODO Maybe add a redundant data structures mapping in-stack positions
- // to frame numbers in order to enable fast access?
};
#endif // STACKREADER_H
fgderimg
fgfact
fgfracon
+ fgframeanatomy
fgframevoilut
+ fgidentpixeltransform
fgimagedatatype
fginterface
fgpixmsr
+ fgparametricmapframetype
fgplanor
fgplanorvol
fgplanpo
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
../../dcmiod/include/dcmtk/dcmiod/modbase.h \
../../ofstd/include/dcmtk/ofstd/ofmem.h ../include/dcmtk/dcmfg/fgbase.h \
- ../include/dcmtk/dcmfg/fgfracon.h ../include/dcmtk/dcmfg/fgframevoilut.h \
+ ../include/dcmtk/dcmfg/fgfracon.h \
+ ../include/dcmtk/dcmfg/fgframeanatomy.h \
+ ../include/dcmtk/dcmfg/fgframevoilut.h \
+ ../include/dcmtk/dcmfg/fgidentpixeltransform.h \
../include/dcmtk/dcmfg/fgimagedatatype.h \
+ ../include/dcmtk/dcmfg/fgparametricmapframetype.h \
../include/dcmtk/dcmfg/fgpixmsr.h ../include/dcmtk/dcmfg/fgplanor.h \
../include/dcmtk/dcmfg/fgplanorvol.h ../include/dcmtk/dcmfg/fgplanpo.h \
../include/dcmtk/dcmfg/fgplanposvol.h ../include/dcmtk/dcmfg/fgseg.h \
../include/dcmtk/dcmfg/fgusimagedescription.h \
- ../include/dcmtk/dcmfg/fgrealworldvaluemapping.h
+ ../include/dcmtk/dcmfg/fgrealworldvaluemapping.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h
fgfracon.o: fgfracon.cc ../../config/include/dcmtk/config/osconfig.h \
../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
../include/dcmtk/dcmfg/fgbase.h ../include/dcmtk/dcmfg/fgtypes.h \
../include/dcmtk/dcmfg/fgdefine.h
+fgframeanatomy.o: fgframeanatomy.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmfg/fgframeanatomy.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h ../include/dcmtk/dcmfg/fgbase.h \
+ ../include/dcmtk/dcmfg/fgtypes.h ../include/dcmtk/dcmfg/fgdefine.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
fgframevoilut.o: fgframevoilut.cc \
../../config/include/dcmtk/config/osconfig.h \
../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmfg/fgdefine.h
+fgidentpixeltransform.o: fgidentpixeltransform.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmfg/fgidentpixeltransform.h \
+ ../include/dcmtk/dcmfg/fgbase.h ../include/dcmtk/dcmfg/fgtypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../include/dcmtk/dcmfg/fgtypes.h ../include/dcmtk/dcmfg/fgdefine.h \
../include/dcmtk/dcmfg/fg.h ../include/dcmtk/dcmfg/fgbase.h \
../include/dcmtk/dcmfg/fgfact.h
+fgparametricmapframetype.o: fgparametricmapframetype.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmfg/fgparametricmapframetype.h \
+ ../include/dcmtk/dcmfg/fgbase.h ../include/dcmtk/dcmfg/fgtypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmfg/fgdefine.h
fgpixmsr.o: fgpixmsr.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmfg/fgpixmsr.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h \
../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
fgseg.o: fgseg.cc ../../config/include/dcmtk/config/osconfig.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
{
FGBase* group = NULL;
FunctionalGroups::iterator it = m_groups.find(fgType);
- if ( it != m_groups.end() )
+ FunctionalGroups::iterator end = m_groups.end();
+ if ( it != end )
{
group = (*it).second;
}
OFCondition FGUnknown::check() const
{
- // TODO
return EC_Normal;
}
OFCondition FGDerivationImage::check() const
{
- // TODO
- return EC_Normal;
+ OFCondition result;
+ OFVector<DerivationImageItem*>::const_iterator it = m_DerivationImageItems.begin();
+ while ( (it != m_DerivationImageItems.end()) && result.good() )
+ {
+ result = (*it)->check();
+ it++;
+ }
+
+ return result;
}
DerivationImageItem& DerivationImageItem::operator=(const DerivationImageItem& rhs)
OFCondition FGDerivationImage::write(DcmItem& item)
{
- OFCondition result = EC_Normal;
+ OFCondition result = check();
DcmIODUtil::writeSubSequence<OFVector<DerivationImageItem*> >
( result,
DCM_DerivationImageSequence,
OFCondition SourceImageItem::check() const
{
- // TODO
- return EC_Normal;
+ OFCondition result = OFconst_cast(ImageSOPInstanceReferenceMacro*, &m_ImageSOPInstanceReference)->check();
+ if (result.bad())
+ {
+ return result;
+ }
+
+ return OFconst_cast(CodeSequenceMacro*, &m_PurposeOfReferenceCode)->check();
}
}
-/* -- Class DerivationImages Implementation -- */
+/* -- Class DerivationImageItem Implementation -- */
DerivationImageItem::DerivationImageItem()
: m_DerivationDescription(DCM_DerivationDescription),
OFCondition DerivationImageItem::check() const
{
- // TODO
- return EC_Normal;
-}
+ if (m_DerivationCodeItems.size() == 0)
+ {
+ DCMFG_ERROR("Derivation Code Sequence in Derivation Image Functional Group Macro must have one or more items");
+ return FG_EC_InvalidData;
+ }
+ OFCondition result;
+ OFVector<CodeSequenceMacro*>::const_iterator it = m_DerivationCodeItems.begin();
+ while (it != m_DerivationCodeItems.end() && result.good())
+ {
+ result = (*it)->check();
+ it++;
+ }
+
+ OFVector<SourceImageItem*>::const_iterator ref = m_SourceImageItems.begin();
+ while ((ref != m_SourceImageItems.end()) && result.good())
+ {
+ result = (*ref)->check();
+ ref++;
+ }
+ return result;
+}
DerivationImageItem::~DerivationImageItem()
OFCondition DerivationImageItem::addSourceImageItem(const OFString& file,
const CodeSequenceMacro& purposeOfReference,
SourceImageItem*& resultSourceImageItem)
+{
+ DcmFileFormat dcmff;
+ DcmDataset *dataset = NULL;
+ OFCondition result = dcmff.loadFile(file.c_str());
+ if (result.bad())
+ {
+ DCMFG_ERROR("Could not load file " << file << ": " << result.text());
+ return result;
+ }
+ dataset = dcmff.getDataset();
+ return addSourceImageItem(dataset, purposeOfReference, resultSourceImageItem);
+}
+
+
+OFCondition DerivationImageItem::addSourceImageItem(DcmDataset *dataset,
+ const CodeSequenceMacro& purposeOfReference,
+ SourceImageItem*& resultSourceImageItem)
{
// Create new source image item
SourceImageItem *item = new SourceImageItem();
{
return EC_MemoryExhausted;
}
+
+ // check code validity
+ if ( OFconst_cast(CodeSequenceMacro*, &purposeOfReference)->check().bad() )
+ {
+ DCMFG_ERROR("Purpose of Reference code within item of Derivation Image Sequence is invalid");
+ return FG_EC_InvalidData;
+ }
+
item->getPurposeOfReferenceCode() = purposeOfReference;
- // TODO: Check code for completeness, and context group?
resultSourceImageItem = NULL;
OFString sopClass, sopInstance, ts;
- OFCondition result = DcmDataUtil::getSOPInstanceFromFile(file, sopClass, sopInstance, ts /*ignored*/);
+ OFCondition result = DcmDataUtil::getSOPInstanceFromDataset(dataset, EXS_Unknown, sopClass, sopInstance, ts /*ignored*/);
{
if ( result.good() ) result = item->getImageSOPInstanceReference().setReferencedSOPClassUID(sopClass);
if ( result.good() ) result = item->getImageSOPInstanceReference().setReferencedSOPInstanceUID(sopInstance);
m_SourceImageItems.push_back(item);
resultSourceImageItem = item;
}
+ else
+ {
+ delete item;
+ }
+
return result;
}
OFVector<SourceImageItem*>& resultSourceImageItems,
const OFBool skipErrors)
{
- // Add files
+ DcmFileFormat dcmff;
OFCondition result;
+ DcmDataset *dataset = NULL;
+ OFVector<DcmDataset*> datasets;
OFVector<OFString>::const_iterator it = files.begin();
while (it != files.end())
+ {
+ result = dcmff.loadFile((*it).c_str());
+ if (result.bad())
+ {
+ DCMFG_ERROR("Could not load file " << (*it) << ": " << result.text());
+ return result;
+ }
+ dataset = dcmff.getDataset();
+ datasets.push_back(dataset);
+ it++;
+ }
+ return addSourceImageItems(datasets, purposeOfReference, resultSourceImageItems, skipErrors);
+}
+
+
+OFCondition DerivationImageItem::addSourceImageItems(const OFVector<DcmDataset*>& datasets,
+ const CodeSequenceMacro& purposeOfReference,
+ OFVector<SourceImageItem*>& resultSourceImageItems,
+ const OFBool skipErrors)
+ {
+ OFCondition result;
+ OFVector<DcmDataset*>::const_iterator it = datasets.begin();
+ while (it != datasets.end())
{
SourceImageItem* resultItem = NULL;
result = addSourceImageItem((*it), purposeOfReference, resultItem);
#include "dcmtk/dcmfg/fgfact.h"
#include "dcmtk/dcmfg/fgderimg.h"
#include "dcmtk/dcmfg/fgfracon.h"
+#include "dcmtk/dcmfg/fgframeanatomy.h"
#include "dcmtk/dcmfg/fgframevoilut.h"
+#include "dcmtk/dcmfg/fgidentpixeltransform.h"
#include "dcmtk/dcmfg/fgimagedatatype.h"
+#include "dcmtk/dcmfg/fgparametricmapframetype.h"
#include "dcmtk/dcmfg/fgpixmsr.h"
#include "dcmtk/dcmfg/fgplanor.h"
#include "dcmtk/dcmfg/fgplanorvol.h"
case DcmFGTypes::EFG_PIXELMEASURES:
return new FGPixelMeasures();
break;
+ case DcmFGTypes::EFG_FRAMEANATOMY:
+ return new FGFrameAnatomy();
+ break;
case DcmFGTypes::EFG_FRAMECONTENT:
return new FGFrameContent();
break;
case DcmFGTypes::EFG_FRAMEVOILUTMETA: // Frame VOI LUT and Frame VOI LUT with LUT
return new FGFrameVOILUT();
+ break;
+ case DcmFGTypes::EFG_PARAMETRICMAPFRAMETYPE:
+ return new FGParametricMapFrameType;
+ break;
case DcmFGTypes::EFG_PLANEPOSPATIENT:
return new FGPlanePosPatient();
break;
case DcmFGTypes::EFG_DERIVATIONIMAGE:
return new FGDerivationImage();
break;
+ case DcmFGTypes::EFG_IDENTITYPIXELVALUETRANSFORMATION:
+ return new FGIdentityPixelValueTransformation();
+ break;
case DcmFGTypes::EFG_IMAGEDATATYPE:
return new FGImageDataType();
break;
return new FGUSImageDescription();
break;
case DcmFGTypes::EFG_CARDIACSYNC:
- case DcmFGTypes::EFG_FRAMEANATOMY:
case DcmFGTypes::EFG_PIXELVALUETRANSMETA: // Pixel Value Transformation Macro or Identity Pixel Value Transformation Macro
case DcmFGTypes::EFG_CONTRASTBOLUSUSAGE:
case DcmFGTypes::EFG_PIXELINTENSITYRELLUT:
OFCondition FGFrameContent::check() const
{
- // TODO
+ // Maybe add checks later
return EC_Normal;
}
}
OFCondition FGFrameContent::setDimensionIndexValues(const Uint32& value,
- const unsigned int pos,
+ const unsigned int dim,
const OFBool checkValue)
{
// no other meaningful checks possible in this context
DCMFG_ERROR("Cannot set dimension index value 0, must be >= 1)");
return EC_InvalidValue;
}
- return m_DimensionIndexValues.putUint32(value, pos);
+ return m_DimensionIndexValues.putUint32(value, dim);
}
OFCondition FGFrameContent::setTemporalPositionIndex(const Uint32& value,
--- /dev/null
+/*
+ *
+ * Copyright (C) 2015-2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmfg
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Class for managing Frame Anatomy Functional Group
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmfg/fgframeanatomy.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmiod/iodutil.h"
+
+
+FGFrameAnatomy::FGFrameAnatomy()
+: FGBase(DcmFGTypes::EFG_FRAMEANATOMY),
+ m_FrameLaterality(LATERALITY_UNDEFINED),
+ m_Anatomy("1" /* Use Mandatory version of macro, i.e. make "Anatomic Region Sequence type 1" */)
+{
+}
+
+
+FGFrameAnatomy::~FGFrameAnatomy()
+{
+ // nothing to do
+}
+
+
+FGBase* FGFrameAnatomy::clone() const
+{
+ FGFrameAnatomy* copy = new FGFrameAnatomy();
+ if (copy)
+ {
+ copy->m_FrameLaterality= this->m_FrameLaterality;
+ copy->m_Anatomy = this->m_Anatomy;
+ }
+ return copy;
+}
+
+
+void FGFrameAnatomy::clearData()
+{
+ m_FrameLaterality = LATERALITY_UNDEFINED;
+ m_Anatomy.clearData();
+}
+
+
+OFCondition FGFrameAnatomy::check() const
+{
+ if (!isLateralityValid(m_FrameLaterality))
+ {
+ DCMFG_ERROR("Frame Laterality invalid");
+ return FG_EC_InvalidData;
+ }
+ return OFconst_cast(GeneralAnatomyMacro*, &m_Anatomy)->check();
+}
+
+
+int FGFrameAnatomy::compare(const FGBase& rhs) const
+{
+ int result = FGBase::compare(rhs);
+ if (result != 0)
+ return result;
+
+ const FGFrameAnatomy* myRhs = OFstatic_cast(const FGFrameAnatomy*, &rhs);
+
+ // Compare all elements
+ if (m_FrameLaterality != myRhs->m_FrameLaterality)
+ return 1;
+
+ return m_Anatomy.compare(myRhs->m_Anatomy);
+}
+
+
+/// Read from Frame Content Sequence
+OFCondition FGFrameAnatomy::read(DcmItem& item)
+{
+ clearData();
+
+ OFCondition result;
+ DcmItem* seqItem = NULL;
+ result = getItemFromFGSequence(item, DCM_FrameAnatomySequence, 0, seqItem);
+ if (result.bad())
+ return result;
+
+ DcmCodeString elem(DCM_FrameLaterality);
+ DcmIODUtil::getAndCheckElementFromDataset(*seqItem, elem, "1", "1", "FrameAnatomyMacro");
+ OFString val;
+ elem.getOFStringArray(val);
+ m_FrameLaterality = str2Laterality(val);
+
+ m_Anatomy.read(*seqItem);
+
+ return EC_Normal;
+}
+
+
+OFCondition FGFrameAnatomy::write(DcmItem& item)
+{
+ OFCondition result = check();
+ if (result.good())
+ {
+ DcmItem* seqItem = NULL;
+ OFCondition result = createNewFGSequence(item, DCM_FrameAnatomySequence, 0, seqItem);
+ if (result.good())
+ {
+ OFString lat = laterality2Str(m_FrameLaterality);
+ result = seqItem->putAndInsertOFStringArray(DCM_FrameLaterality, lat);
+ if (result.good())
+ {
+ result = m_Anatomy.write(*seqItem);
+ }
+ }
+ }
+
+ return result;
+}
+
+
+OFCondition FGFrameAnatomy::getLaterality(FGFrameAnatomy::LATERALITY& value)
+{
+ value = m_FrameLaterality;
+ return EC_Normal;
+}
+
+
+GeneralAnatomyMacro& FGFrameAnatomy::getAnatomy()
+{
+ return m_Anatomy;
+}
+
+
+OFCondition FGFrameAnatomy::setLaterality(const FGFrameAnatomy::LATERALITY& value)
+{
+ if (isLateralityValid(value))
+ {
+ m_FrameLaterality = value;
+ return EC_Normal;
+ }
+ else
+ {
+ return FG_EC_InvalidData;
+ }
+}
+
+
+OFString FGFrameAnatomy::laterality2Str(const FGFrameAnatomy::LATERALITY lat)
+{
+ switch(lat)
+ {
+ case LATERALITY_INVALID: return "Invalid";
+ case LATERALITY_L: return "L";
+ case LATERALITY_R: return "R";
+ case LATERALITY_BOTH: return "B";
+ case LATERALITY_UNDEFINED: return "Undefined";
+ case LATERALITY_UNPAIRED: return "U";
+ default: return "Invalid";
+ }
+}
+
+
+FGFrameAnatomy::LATERALITY FGFrameAnatomy::str2Laterality(const OFString& lat)
+{
+ if (lat == "L")
+ return LATERALITY_L;
+ if (lat == "R")
+ return LATERALITY_R;
+ if (lat == "U")
+ return LATERALITY_UNPAIRED;
+ if (lat == "B")
+ return LATERALITY_BOTH;
+
+ if (lat.empty())
+ return LATERALITY_UNDEFINED;
+
+ return LATERALITY_INVALID;
+
+}
+
+
+OFBool FGFrameAnatomy::isLateralityValid(const FGFrameAnatomy::LATERALITY lat)
+{
+ if ( (lat == LATERALITY_L) || (lat == LATERALITY_R) || (lat == LATERALITY_BOTH) ||
+ (lat == LATERALITY_UNPAIRED) )
+ return OFTrue;
+ else
+ return OFFalse;
+}
+
OFCondition FGFrameVOILUT::check() const
{
- // TODO
+ // For now attribute-based checks in read() and write() are sufficient
return EC_Normal;
}
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Identity Pixel Value Transformation
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmiod/iodutil.h"
+#include "dcmtk/dcmfg/fgidentpixeltransform.h"
+
+FGIdentityPixelValueTransformation::FGIdentityPixelValueTransformation()
+: FGBase(DcmFGTypes::EFG_UNDEFINED)
+, m_RescaleIntercept(DCM_RescaleIntercept)
+, m_RescaleSlope(DCM_RescaleSlope)
+, m_RescaleType(DCM_RescaleType)
+{
+ m_RescaleIntercept.putOFStringArray("0");
+ m_RescaleSlope.putOFStringArray("1");
+ m_RescaleType.putOFStringArray("US");
+}
+
+
+FGIdentityPixelValueTransformation::~FGIdentityPixelValueTransformation()
+{
+
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::check() const
+{
+ Float64 rs, ri;
+ rs = ri = 0;
+ OFString rt;
+ OFBool ok = OFTrue;
+ if (OFconst_cast(DcmDecimalString*, &m_RescaleIntercept)->getFloat64(ri).good())
+ {
+ if (ri != 0)
+ {
+ DCMFG_ERROR("Rescale Intercept in Identity Pixel Value Transformation FG must be 0 but is set to " << ri);
+ ok = OFFalse;
+ }
+ }
+ else
+ {
+ DCMFG_ERROR("Invalid or no value for Rescale Intercept in Identity Pixel Value Transformation FG (0 is the only valid value");
+ ok = OFFalse;
+ }
+
+ if (OFconst_cast(DcmDecimalString*, &m_RescaleSlope)->getFloat64(rs).good())
+ {
+ if (rs != 1)
+ {
+ DCMFG_ERROR("Rescale Slope in Identity Pixel Value Transformation FG must be 1 but is set to " << rs);
+ ok = OFFalse;
+ }
+ }
+ else
+ {
+ DCMFG_ERROR("Invalid or no value for Rescale Slope in Identity Pixel Value Transformation FG (1 is the only valid value");
+ ok = OFFalse;
+ }
+
+ if (OFconst_cast(DcmLongString*, &m_RescaleType)->getOFStringArray(rt).good())
+ {
+ if (rt != "US")
+ {
+ DCMFG_ERROR("Rescale Type in Identity Pixel Value Transformation FG must be \"US\" but is set to " << rt);
+ ok = OFFalse;
+ }
+ }
+ else
+ {
+ DCMFG_ERROR("Invalid or no value for Rescale Type in Identity Pixel Value Transformation FG (\"US\" is the only valid value");
+ ok = OFFalse;
+ }
+ if (ok)
+ {
+ return EC_Normal;
+ }
+ else
+ {
+ return FG_EC_InvalidData;
+ }
+}
+
+
+void FGIdentityPixelValueTransformation::clearData()
+{
+ m_RescaleIntercept.clear();
+ m_RescaleSlope.clear();
+ m_RescaleType.clear();
+}
+
+
+FGBase* FGIdentityPixelValueTransformation::clone() const
+{
+ if(FGIdentityPixelValueTransformation* copy = new FGIdentityPixelValueTransformation)
+ {
+ copy->m_RescaleIntercept = m_RescaleIntercept;
+ copy->m_RescaleSlope = m_RescaleSlope;
+ copy->m_RescaleType = m_RescaleType;
+ return copy;
+ }
+ return OFnullptr;
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::read(DcmItem& item)
+{
+ clearData();
+
+ DcmItem* seqItem;
+ OFCondition result;
+
+ seqItem = OFnullptr;
+ result = getItemFromFGSequence(item, DCM_PixelValueTransformationSequence, 0, seqItem);
+ if(result.bad())
+ return result;
+ DcmIODUtil::getAndCheckElementFromDataset(*seqItem, m_RescaleIntercept, "1", "1", "Identity Pixel Value Transformation");
+ DcmIODUtil::getAndCheckElementFromDataset(*seqItem, m_RescaleSlope, "1", "1", "Identity Pixel Value Transformation");
+ DcmIODUtil::getAndCheckElementFromDataset(*seqItem, m_RescaleType, "1", "1", "Identity Pixel Value Transformation");
+
+ return EC_Normal;
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::write(DcmItem& item)
+{
+ DcmItem* seqItem;
+ DCMFG_DEBUG("Identity Pixel Value Transformation Macro: Fixing values for Rescale Slope, Intercept and Type to enumerated values '1', '0' and 'US'");
+ m_RescaleSlope.putOFStringArray("1");
+ m_RescaleIntercept.putOFStringArray("0");
+ m_RescaleType.putOFStringArray("US");
+
+ seqItem = OFnullptr;
+ OFCondition result = createNewFGSequence(item, DCM_PixelValueTransformationSequence, 0, seqItem);
+ if(result.bad())
+ return result;
+ DcmIODUtil::copyElementToDataset(result, *seqItem, m_RescaleIntercept, "1", "1", "Identity Pixel Value Transformation");
+ DcmIODUtil::copyElementToDataset(result, *seqItem, m_RescaleSlope, "1", "1", "Identity Pixel Value Transformation");
+ DcmIODUtil::copyElementToDataset(result, *seqItem, m_RescaleType, "1", "1", "Identity Pixel Value Transformation");
+
+ return result;
+}
+
+
+int FGIdentityPixelValueTransformation::compare(const FGBase& rhs) const
+{
+ int result = FGBase::compare(rhs);
+ if(result == 0)
+ {
+ const FGIdentityPixelValueTransformation* myRhs = OFstatic_cast(const FGIdentityPixelValueTransformation*, &rhs);
+
+ // Compare all elements
+ result = m_RescaleIntercept.compare(myRhs->m_RescaleIntercept);
+ result = m_RescaleSlope.compare(myRhs->m_RescaleSlope);
+ result = m_RescaleType.compare(myRhs->m_RescaleType);
+ }
+
+ return result;
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::getRescaleIntercept(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromElement(m_RescaleIntercept, value, pos);
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::getRescaleSlope(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromElement(m_RescaleSlope, value, pos);
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::getRescaleType(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromElement(m_RescaleType, value, pos);
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::setRescaleIntercept(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_RescaleIntercept.putString(value.c_str());
+ return result;
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::setRescaleSlope(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_RescaleSlope.putString(value.c_str());
+ return result;
+}
+
+
+OFCondition FGIdentityPixelValueTransformation::setRescaleType(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_RescaleType.putString(value.c_str());
+ return result;
+}
+
OFCondition FGImageDataType::check() const
{
- // TODO
+ // For now, checks in read() and write() are sufficient
return EC_Normal;
}
{
DcmIODUtil::copyElementToDataset(result, *seqItem, m_ZeroVelocityPixelValueUS, "1", "1C", "ImageDataTypeMacro");
}
+ // Zero Velocity Pixel Value is required in case Data Type is TISSUE_VELOCITY,
+ // FLOW_VELOCITY or DIRECTION_POWER.
+ else
+ {
+ OFString val;
+ m_DataType.getOFStringArray(val);
+ if ( (val == "TISSUE_VELOCITY") || (val == "FLOW_VELOCITY") || (val == "DIRECTION_POWER") )
+ {
+ DCMFG_ERROR("Missing value for Zero Velocity Pixel Value (required if Data Type has" <<
+ "the value TISSUE_VELOCITY, FLOW_VELOCITY or DIRECTION_POWER");
+ return FG_EC_InvalidData;
+ }
+ }
return result;
}
}
/* Read functional groups for each item (one per frame) */
- for (size_t count = 0; count < numFrames; count++)
+ DcmItem *oneFrameItem = OFstatic_cast(DcmItem*, perFrame->nextInContainer(NULL));
+ Uint32 count = 0;
+ while (oneFrameItem != NULL)
{
- DcmItem* oneFrameItem = perFrame->getItem(count);
OFauto_ptr<FunctionalGroups> perFrameGroups(new FunctionalGroups());
- // FunctionalGroups* perFrameGroups = new FunctionalGroups();
if (!oneFrameItem)
{
DCMFG_ERROR("Could not get functional group item for frame #" << count << " (internal error)");
DCMFG_ERROR("Could not read functional groups for frame #" << count << ": " << result.text());
}
}
+ oneFrameItem = OFstatic_cast(DcmItem*, perFrame->nextInContainer(oneFrameItem));
+ count++;
}
return EC_Normal; // for now we always return EC_Normal...
}
}
-// TODO: overload (templates?) to return correct derived class type?
FGBase* FGInterface::getShared(const DcmFGTypes::E_FGType fgType)
{
return m_shared.find(fgType);
}
+size_t FGInterface::deleteFrame(const Uint32 frameNo)
+{
+ OFMap<Uint32, FunctionalGroups*>::iterator it = m_perFrame.find(frameNo);
+ if (it != m_perFrame.end())
+ {
+ if ( (*it).second )
+ {
+ FunctionalGroups::iterator fg = (*it).second->begin();
+ while (fg != (*it).second->end())
+ {
+ delete (*fg).second;
+ fg++;
+ }
+ }
+ m_perFrame.erase(it);
+ }
+ return OFFalse;
+}
+
FunctionalGroups* FGInterface::getOrCreatePerFrameGroups(const Uint32 frameNo)
{
}
FunctionalGroups::iterator it = m_shared.begin();
- while ( (it != m_shared.end()) && result.good() )
+ FunctionalGroups::iterator end = m_shared.end();
+ while ( (it != end) && result.good() )
{
DCMFG_DEBUG("Writing shared group: " << DcmFGTypes::FGType2OFString((*it).second->getType()));
result = (*it).second->write(*sharedFGItem);
// Every frame requires the FrameContent functional group, check "en passant"
OFBool foundFrameContent = OFFalse;
OFMap<Uint32, FunctionalGroups*>::iterator frameFG = m_perFrame.begin();
- while (frameFG != m_perFrame.end())
+ OFMap<Uint32, FunctionalGroups*>::iterator end = m_perFrame.end();
+ while (frameFG != end)
{
FunctionalGroups::iterator group = (*frameFG).second->begin();
- while (group != (*frameFG).second->end())
+ FunctionalGroups::iterator groupEnd = (*frameFG).second->end();
+ while (group != groupEnd)
{
// Check that per-frame group is not shared group at the same time
DcmFGTypes::E_FGType groupType = group->second->getType();
// Check whether shared groups contain FGs that are only permitted per-frame
FunctionalGroups::iterator it = m_shared.begin();
- while (it != m_shared.begin())
+ FunctionalGroups::iterator end = m_shared.end();
+ while (it != end)
{
if ( (*it).second->getSharedType() == DcmFGTypes::EFGS_ONLYPERFRAME )
{
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmfg
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Parametric Map Frame Type
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmiod/iodutil.h"
+#include "dcmtk/dcmfg/fgparametricmapframetype.h"
+
+FGParametricMapFrameType::FGParametricMapFrameType()
+: FGBase(DcmFGTypes::EFG_PARAMETRICMAPFRAMETYPE)
+, m_FrameType(DCM_FrameType)
+{
+
+}
+
+FGParametricMapFrameType::~FGParametricMapFrameType()
+{
+
+}
+
+void FGParametricMapFrameType::clearData()
+{
+ m_FrameType.clear();
+}
+
+FGBase* FGParametricMapFrameType::clone() const
+{
+ if(FGParametricMapFrameType* copy = new FGParametricMapFrameType)
+ {
+ copy->m_FrameType = m_FrameType;
+ return copy;
+ }
+ return OFnullptr;
+}
+
+OFCondition FGParametricMapFrameType::read(DcmItem& item)
+{
+ clearData();
+
+ DcmItem* seqItem;
+ OFCondition result;
+
+ seqItem = OFnullptr;
+ result = getItemFromFGSequence(item, DCM_ParametricMapFrameTypeSequence, 0, seqItem);
+ if(result.bad())
+ return result;
+ DcmIODUtil::getAndCheckElementFromDataset(*seqItem, m_FrameType, "4", "1", "Parametric Map Frame Type");
+
+ return EC_Normal;
+}
+
+
+OFCondition FGParametricMapFrameType::write(DcmItem& item)
+{
+ OFCondition result = check();
+ if (result.good())
+ {
+ DcmItem* seqItem;
+ seqItem = OFnullptr;
+ result = createNewFGSequence(item, DCM_ParametricMapFrameTypeSequence, 0, seqItem);
+ if(result.good())
+ {
+ DcmIODUtil::copyElementToDataset(result, *seqItem, m_FrameType, "4", "1", "Parametric Map Frame Type");
+ }
+ }
+ return result;
+}
+
+
+int FGParametricMapFrameType::compare(const FGBase& rhs) const
+{
+ int result = FGBase::compare(rhs);
+ if(result == 0)
+ {
+ const FGParametricMapFrameType* myRhs = OFstatic_cast(const FGParametricMapFrameType*, &rhs);
+
+ // Compare all elements
+ result = m_FrameType.compare(myRhs->m_FrameType);
+ }
+
+ return result;
+}
+
+
+OFCondition FGParametricMapFrameType::check() const
+{
+ DcmCodeString myFrameType = m_FrameType;
+ OFCondition result = myFrameType.checkValue("4");
+ if (result.good())
+ {
+ OFString val;
+ myFrameType.getOFString(val, 0);
+ if (val == "DERIVED")
+ {
+ val.clear();
+ myFrameType.getOFString(val, 1);
+ if (val == "PRIMARY")
+ {
+ val.clear();
+ myFrameType.getOFString(val, 1);
+ return EC_Normal;
+ }
+ else
+ DCMFG_ERROR("Frame Type' 2nd value must be \"PRIMARY\" but is \"" << val << "\"");
+ }
+ else
+ DCMFG_ERROR("Frame Type 1st value must be \"DERIVED\" but is \"" << val << "\"");
+ }
+ return FG_EC_InvalidData;
+}
+
+
+OFCondition FGParametricMapFrameType::getFrameType(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromElement(m_FrameType, value, pos);
+}
+
+
+OFCondition FGParametricMapFrameType::setFrameType(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "4") : EC_Normal;
+ if (result.good())
+ result = m_FrameType.putString(value.c_str());
+ return result;
+}
OFCondition FGPixelMeasures::check() const
{
- // TODO
+ // Checks in read() and write() are sufficient for now
return EC_Normal;
}
OFCondition FGPlaneOrientationPatient::check() const
{
- // TODO
+ // Checks in read() and write() are sufficient for now
return EC_Normal;
}
OFCondition FGPlaneOrientationVolume::check() const
{
- // TODO
+ // Checks in read() and write() are sufficient for now
return EC_Normal;
}
OFCondition FGPlanePosPatient::check() const
{
- // TODO
+ // Checks in read() and write() are sufficient for now
return EC_Normal;
}
OFCondition FGPlanePositionVolume::check() const
{
- // TODO
+ // Checks in read() and write() are sufficient for now
return EC_Normal;
}
OFCondition FGRealWorldValueMapping::check() const
{
- // TODO
+ // More checks checks for 1C conditions could be added
return EC_Normal;
}
FGRealWorldValueMapping::RWVMItem::RWVMItem(IODComponent* parent)
: IODComponent(parent),
- m_MeasurementUnitsCode()
+ m_MeasurementUnitsCode(),
+ m_QuantityDefinitionSequence()
{
resetRules();
}
OFshared_ptr< IODRules > rules,
IODComponent* parent)
: IODComponent(item, rules, parent),
- m_MeasurementUnitsCode()
+ m_MeasurementUnitsCode(),
+ m_QuantityDefinitionSequence()
{
resetRules();
}
-FGRealWorldValueMapping::RWVMItem* FGRealWorldValueMapping::RWVMItem::clone()
+FGRealWorldValueMapping::RWVMItem::RWVMItem(const FGRealWorldValueMapping::RWVMItem& rhs)
+: IODComponent(rhs)
{
- FGRealWorldValueMapping::RWVMItem* mapping = new FGRealWorldValueMapping::RWVMItem(*this);
- if (mapping)
+ m_MeasurementUnitsCode = rhs.m_MeasurementUnitsCode;
+ OFVector<ContentItemMacro*>::const_iterator it = rhs.m_QuantityDefinitionSequence.begin();
+ while (it != rhs.m_QuantityDefinitionSequence.end())
{
- // We do not have a copy constructor or clone function on IODComponent
- OFString code, meaning, scheme, version;
- m_MeasurementUnitsCode.getCodeValue(code);
- m_MeasurementUnitsCode.getCodeMeaning(meaning);
- m_MeasurementUnitsCode.getCodingSchemeDesignator(scheme);
- m_MeasurementUnitsCode.getCodingSchemeVersion(version);
- mapping->m_MeasurementUnitsCode.set(code, scheme, meaning, version, OFFalse /* do not check */);
+ ContentItemMacro* macro = new ContentItemMacro(**it);
+ if (macro == NULL)
+ {
+ DCMFG_ERROR("Out of memory in copy constructor of FGRealWorldValueMapping::RWVMItem::RWVMItem");
+ return;
+ }
+ m_QuantityDefinitionSequence.push_back(macro);
+ it++;
}
- return mapping;
+}
+
+
+
+FGRealWorldValueMapping::RWVMItem* FGRealWorldValueMapping::RWVMItem::clone()
+{
+ return new FGRealWorldValueMapping::RWVMItem(*this);
}
FGRealWorldValueMapping::RWVMItem::~RWVMItem()
{
- // nothing to do
+ DcmIODUtil::freeContainer(m_QuantityDefinitionSequence);
}
return IODComponent::compare(rhs);
}
+
void FGRealWorldValueMapping::RWVMItem::resetRules()
{
// parameters are tag, VM, type. Overwrite old rules if any.
- m_Rules->addRule(new IODRule(DCM_RealWorldValueFirstValueMapped, "1","1",getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
- m_Rules->addRule(new IODRule(DCM_RealWorldValueLastValueMapped, "1","1", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_RealWorldValueFirstValueMapped, "1","1C",getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_RealWorldValueLastValueMapped, "1","1C", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_DoubleFloatRealWorldValueFirstValueMapped, "1","1C",getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_DoubleFloatRealWorldValueLastValueMapped, "1","1C", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
m_Rules->addRule(new IODRule(DCM_RealWorldValueIntercept, "1","1C", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
m_Rules->addRule(new IODRule(DCM_RealWorldValueSlope, "1","1C", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
m_Rules->addRule(new IODRule(DCM_RealWorldValueLUTData, "1-n","1C", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
m_Rules->addRule(new IODRule(DCM_LUTExplanation, "1","1", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
m_Rules->addRule(new IODRule(DCM_LUTLabel, "1","1", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
m_Rules->addRule(new IODRule(DCM_MeasurementUnitsCodeSequence, "1","1", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
- //m_Rules->addRule(new IODRule(DCM_QuantityDefinitionSequence, "1","3", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_QuantityDefinitionSequence, "1-n","3", getName(), DcmIODTypes::IE_INSTANCE), OFTrue);
}
+
OFCondition FGRealWorldValueMapping::RWVMItem::read(DcmItem& source,
const OFBool clearOldData)
{
DcmIODUtil::readSingleItem(source, DCM_MeasurementUnitsCodeSequence, m_MeasurementUnitsCode, "1", m_ModuleName);
+ DcmIODUtil::readSubSequence(source, DCM_QuantityDefinitionSequence, m_QuantityDefinitionSequence, m_Rules->getByTag(DCM_QuantityDefinitionSequence));
return IODComponent::read(source, clearOldData);
}
{
OFCondition result;
DcmIODUtil::writeSingleItem(result, DCM_MeasurementUnitsCodeSequence, m_MeasurementUnitsCode, *m_Item, "1", m_ModuleName);
+ DcmIODUtil::writeSubSequence(result, DCM_QuantityDefinitionSequence, m_QuantityDefinitionSequence, *m_Item, m_Rules->getByTag(DCM_QuantityDefinitionSequence));
if (result.good()) result = IODComponent::write(destination);
return result;
}
OFCondition FGRealWorldValueMapping::RWVMItem::getRealWorldValueLastValueMapped(Sint32& value,
- const unsigned long pos) const
+ const unsigned long pos) const
{
return getUSorSS(*m_Item, DCM_RealWorldValueLastValueMapped, pos, value);
}
+OFCondition FGRealWorldValueMapping::RWVMItem::getDoubleFloatRealWorldValueFirstValueMapped(Float64& value,
+ const unsigned long pos) const
+{
+ return (*m_Item).findAndGetFloat64(DCM_DoubleFloatRealWorldValueFirstValueMapped, value, pos);
+}
+
+
+OFCondition FGRealWorldValueMapping::RWVMItem::getDoubleFloatRealWorldValueLastValueMapped(Float64& value,
+ const unsigned long pos) const
+{
+ return (*m_Item).findAndGetFloat64(DCM_DoubleFloatRealWorldValueFirstValueMapped, value, pos);
+}
+
+
OFCondition FGRealWorldValueMapping::RWVMItem::getRealWorldValueLUTData(OFVector< Float64 >& values) const
{
DcmElement* elem = NULL;
}
-OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueFirstValueMappedUnsigned(const Uint16& value,
+OFVector<ContentItemMacro*> & FGRealWorldValueMapping::RWVMItem::getEntireQuantityDefinitionSequence()
+{
+ return m_QuantityDefinitionSequence;
+}
+
+
+OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueFirstValueMappedUnsigned(const Uint16 value,
const OFBool checkValue)
{
(void)checkValue;
}
-OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueLastValueMappedUnsigned(const Uint16& value,
+OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueLastValueMappedUnsigned(const Uint16 value,
const OFBool checkValue)
{
(void)checkValue;
}
-OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueIntercept(const Float64& value,
+OFCondition FGRealWorldValueMapping::RWVMItem::setDoubleFloatRealWorldValueFirstValueMapped(const Float64 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return (*m_Item).putAndInsertFloat64(DCM_DoubleFloatRealWorldValueFirstValueMapped, value);
+}
+
+
+OFCondition FGRealWorldValueMapping::RWVMItem::setDoubleFloatRealWorldValueLastValueMapped(const Float64 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return (*m_Item).putAndInsertFloat64(DCM_DoubleFloatRealWorldValueLastValueMapped, value);
+}
+
+
+OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueIntercept(const Float64 value,
const OFBool checkValue)
{
(void)checkValue;
}
-OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueSlope(const Float64& value,
+OFCondition FGRealWorldValueMapping::RWVMItem::setRealWorldValueSlope(const Float64 value,
const OFBool checkValue)
{
(void)checkValue;
OFCondition FGSegmentation::check() const
{
- // TODO
+ // Checks in read() and write() are sufficient for now
return EC_Normal;
}
case EFG_IRRADIATIONEVENTIDENT: return "Irradiation Event Identification Functional Group Macro"; break;
/// Radiopharmaceutical Usage
case EFG_RADIOPHARAMAUSAGE: return "Radiopharmaceutical Usage Functional Group Macro"; break;
+ /// Parametric Map Frame Type
+ case EFG_PARAMETRICMAPFRAMETYPE: return "Parametric Map Frame Type Functional Group Macro"; break;
/// Patient Physiological State
case EFG_PATIENTPHYSIOSTATE: return "Patient Physiological State Functional Group Macro"; break;
/// Plane Position (Volume)
case EFG_PLANEORIENTVOLUME: return "Plane Orientation (Volume) Functional Group Macro"; break;
/// Temporal Position Macro
case EFG_TEMPORALPOSITION: return "Temporal Position Functional Group Macro"; break;
+ /// Identity Pixel Value Transformation
+ case EFG_IDENTITYPIXELVALUETRANSFORMATION: return "Identity Pixel Value Transformation"; break;
/// Image Data Type
case EFG_IMAGEDATATYPE: return "Image Data Type Functional Group Macro"; break;
/// Unassigned Shared Converted Attributes Macro
DcmFGTypes::E_FGType DcmFGTypes::tagKey2FGType(const DcmTagKey& key)
{
- // TODO: Use neat value to enum trick from Alexandrescu in order to have switch statement instead?
+ // Note: Use neat value to enum trick from Alexandrescu in order to have switch statement instead?
if (key == DCM_PixelMeasuresSequence)
return EFG_PIXELMEASURES;
else if (key == DCM_FrameContentSequence)
return EFG_RADIOPHARAMAUSAGE;
else if (key == DCM_PatientPhysiologicalStateSequence)
return EFG_PATIENTPHYSIOSTATE;
+ else if (key == DCM_ParametricMapFrameTypeSequence)
+ return EFG_PARAMETRICMAPFRAMETYPE;
else if (key == DCM_PlanePositionVolumeSequence)
return EFG_PLANEPOSITIONVOLUME;
else if (key == DCM_PlaneOrientationVolumeSequence)
return EFG_PLANEORIENTVOLUME;
else if (key == DCM_TemporalPositionSequence)
return EFG_TEMPORALPOSITION;
+ else if (key == DCM_PixelValueTransformationSequence)
+ return EFG_IDENTITYPIXELVALUETRANSFORMATION;
else if (key == DCM_ImageDataTypeSequence)
return EFG_IMAGEDATATYPE;
else if (key == DCM_UnassignedSharedConvertedAttributesSequence)
OFCondition FGUSImageDescription::check() const
{
- // TODO
+ // Checks in read() and write() are sufficient for now
return EC_Normal;
}
if (dlut != NULL) // perform display transformation
{
DCMIMGLE_TRACE("monochrome rendering: VOI LUT #1 - UNTESTED");
- if (low > high) // invers
+ if (low > high) // inverse
value = OFstatic_cast(T3, dlut->getValue(OFstatic_cast(Uint16, plut->getAbsMaxRange() - plut->getValue(value2) - 1)));
else // normal
value = OFstatic_cast(T3, dlut->getValue(OFstatic_cast(Uint16, plut->getValue(value2))));
if (dlut != NULL) // perform display transformation
{
DCMIMGLE_TRACE("monochrome rendering: VOI LUT #3 - UNTESTED");
- if (low > high) // invers
+ if (low > high) // inverse
value = OFstatic_cast(T3, dlut->getValue(OFstatic_cast(Uint16, vlut->getAbsMaxRange() - minvalue - 1)));
else // normal
value = OFstatic_cast(T3, dlut->getValue(OFstatic_cast(Uint16, minvalue)));
if ((OutputData != NULL) && (OutputData->getData() != NULL))
{
- DiImage *image = new DiMono2Image(this, OutputData, frame, bits, OutputData->getItemSize() * 8);
+ DiImage *image = new DiMono2Image(this, OutputData, frame, bits, OFstatic_cast(int, OutputData->getItemSize() * 8));
if (image != NULL)
OutputData->removeDataReference(); // output data is now handled by new mono image
return image;
/*
*
- * Copyright (C) 2015, Open Connections GmbH
+ * Copyright (C) 2015-2016, Open Connections GmbH
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation are maintained by
*/
DcmIODCommon();
+ /** Copy Constructor
+ * @param rhs The object to copy from
+ */
+ DcmIODCommon(const DcmIODCommon& rhs);
+
/** Get rules handled by this IOD
* @return The rules
*/
OFBool readFoR = OFFalse,
OFBool readSeries = OFFalse);
+ /** Import common module attributes from DICOM file but only read Patient, Study,
+ * Series and/or Frame of Reference level portions. The current content
+ * is not deleted before reading. If the log stream is set and valid the
+ * reason for any error might be obtained from the error/warning output.
+ * This function is deprecated and might be removed in later versions of
+ * DCMTK. Use the import() call offering the same parameters and
+ * functionality, instead.
+ * @param filename The filename to read from.
+ * @param usePatient If OFTrue, Patient level information is imported
+ * @param useStudy If OFTrue, Study level information is imported
+ * @param useSeries If OFTrue, Series level information is imported
+ * @param useFoR If OFTrue, Frame of Reference information is imported
+ * @return EC_Normal if reading was successful (i.e.\ if any information could
+ * be read), otherwise an error is returned
+ */
+ OFCondition importPatientStudyFoR(const OFString& filename,
+ const OFBool usePatient,
+ const OFBool useStudy,
+ const OFBool useSeries,
+ const OFBool useFoR = OFFalse);
+
+ /** Import common module attributes from DICOM file but only read Patient, Study,
+ * Series and/or Frame of Reference level portions. The current content
+ * is not deleted before reading. If the log stream is set and valid the
+ * reason for any error might be obtained from the error/warning output.
+ * @param filename The filename to read from
+ * @param usePatient If OFTrue, Patient level information is imported
+ * @param useStudy If OFTrue, Study level information is imported
+ * @param useSeries If OFTrue, Series level information is imported
+ * @param useFoR If OFTrue, Frame of Reference information is imported
+ * @return EC_Normal if reading was successful (i.e.\ if any information could
+ * be read), otherwise an error is returned
+ */
+ virtual OFCondition import(const OFString& filename,
+ const OFBool usePatient,
+ const OFBool useStudy,
+ const OFBool useSeries,
+ const OFBool useFoR = OFFalse);
+
+
/** Write the attributes managed by this class to DICOM dataset.
* @param dataset Reference to DICOM dataset to which the current document
* should be written. The dataset is not cleared
private:
+ /** Copy assignment disabled
+ */
+ DcmIODCommon& operator=(const DcmIODCommon&);
+
/// The data hold by this class (shared with modules below)
OFshared_ptr<DcmItem> m_Item;
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Content Item Macro
+ *
+ */
+
+#ifndef IODCONTENTITEMMACRO_H
+#define IODCONTENTITEMMACRO_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/ofstd/ofmem.h"
+#include "dcmtk/dcmiod/iodrules.h"
+#include "dcmtk/dcmiod/modbase.h"
+#include "dcmtk/dcmiod/iodmacro.h"
+#include "dcmtk/dcmiod/iodtypes.h"
+
+/** Class representing the Content Item Macro:
+ *
+ * ValueType: (CS, 1, 1)
+ * ConceptNameCodeSequence: (SQ, 1, 1)
+ * DateTime: (DT, 1, 1C)
+ * Date: (DA, 1, 1C)
+ * Time: (TM, 1, 1C)
+ * PersonName: (PN, 1, 1C)
+ * UID: (UI, 1, 1C)
+ * TextValue: (UT, 1, 1C)
+ * ConceptCodeSequence: (SQ, 1, 1C)
+ * NumericValue: (DS, 1-n, 1C)
+ * FloatingPointValue: (FD, 1-n, 1C)
+ * RationalNumeratorValue: (SL, 1-n, 1C)
+ * RationalDenominatorValue: (UL, 1-n, 1C)
+ * MeasurementUnitsCodeSequence: (SQ, 1, 1C)
+ * ReferencedSOPSequence: (SQ, 1, 1C)
+ */
+class DCMTK_DCMIOD_EXPORT ContentItemMacro : public IODComponent
+{
+public:
+
+ enum ValueType
+ {
+ // Value is empty and not provided
+ VT_EMPTY,
+ // Value is provided but not known to the implementation
+ VT_UNKNOWN,
+ VT_DATE,
+ VT_TIME,
+ VT_DATETIME,
+ VT_PNAME,
+ VT_UIDREF,
+ VT_TEXT,
+ VT_CODE,
+ VT_NUMERIC,
+ VT_COMPOSITE,
+ VT_IMAGE
+ };
+
+ /** Class representing an item within the Content Item Macro's Referenced
+ * SOP Sequence
+ */
+ class DCMTK_DCMIOD_EXPORT ReferencedSOPSequenceItem : public IODComponent
+ {
+ public:
+
+ /** Constructor
+ * @param item The item to be used for data storage. If NULL, the
+ * class creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ * @param parent The parent of the IOD component (NULL if none or unknown)
+ */
+ ReferencedSOPSequenceItem(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules,
+ IODComponent* parent = NULL);
+
+ /** Constructor
+ * @param parent The parent of the IOD component (NULL if none or unknown)
+ */
+ ReferencedSOPSequenceItem(IODComponent* parent = NULL);
+
+ /** Copy Constructor, performs deep copy
+ * @param rhs The parent of the IOD component (NULL if none or unknown)
+ */
+ ReferencedSOPSequenceItem(const ReferencedSOPSequenceItem& rhs);
+
+ /** Virtual Destructor
+ */
+ virtual ~ReferencedSOPSequenceItem();
+
+ /** Read attributes from given item into this class
+ * @param source The source to read from
+ * @param clearOldData If OFTrue, old data is cleared before reading. Otherwise
+ * old data is overwritten (or amended)
+ * @result EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& source,
+ const OFBool clearOldData = OFTrue);
+
+ /** Write attributes from this class into given item
+ * @param destination The item to write to
+ * @result EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& destination);
+
+ /** Resets rules to their original values
+ */
+ virtual void resetRules();
+
+ /** Get name of macro
+ * @return Name of the component ("ReferencedSOPSequenceItem")
+ */
+ virtual OFString getName() const;
+
+ /** Get SOPInstanceReferenceMacro
+ * @return a reference to the included SOPInstanceReferenceMacro
+ */
+ virtual SOPInstanceReferenceMacro& getSOPInstanceReferenceMacro();
+
+ /** Get ReferencedFrameNumber
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getReferencedFrameNumber(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get ReferencedSegmentNumber
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getReferencedSegmentNumber(Uint16 &value,
+ const signed long pos = 0) const;
+
+ /** Set ReferencedFrameNumber
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (IS) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setReferencedFrameNumber(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set ReferencedSegmentNumber
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (US) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setReferencedSegmentNumber(const Uint16 value,
+ const OFBool checkValue = OFTrue);
+
+ protected:
+
+ /// The name of this item ("ReferencedSOPSequenceItem")
+ static const OFString m_ComponentName;
+
+ /// SOP Instance Reference Macro
+ SOPInstanceReferenceMacro m_SOPInstanceReferenceMacro;
+ };
+
+ /** Constructor
+ * @param item The item to be used for data storage. If NULL, the
+ * class creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ */
+ ContentItemMacro(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules);
+
+ /** Constructor
+ */
+ ContentItemMacro();
+
+ /** Destructor
+ */
+ virtual ~ContentItemMacro();
+
+ ContentItemMacro(const ContentItemMacro& rhs);
+
+ /** Resets rules to their original values
+ */
+ virtual void resetRules();
+
+ /** Get name of module ("ContentItemMacro")
+ * @return Name of the module ("ContentItemMacro")
+ */
+ virtual OFString getName() const;
+
+ /** Read attributes from given item into this class
+ * @param source The source to read from
+ * @param clearOldData If OFTrue, old data is cleared before reading. Otherwise
+ * old data is overwritten (or amended)
+ * @result EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& source,
+ const OFBool clearOldData = OFTrue);
+
+ /** Write attributes from this class into given item
+ * @param destination The item to write to
+ * @result EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& destination);
+
+ /** Get ValueType
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getValueType(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get ValueType
+ * @param value Reference to variable in which the value should be stored
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getValueType(ValueType &value) const;
+
+ /** Get reference to the ConceptNameCodeSequence
+ * @return a reference to the ConceptNameCodeSequence
+ */
+ virtual CodeSequenceMacro* getConceptNameCodeSequence();
+
+ /** Get a reference to the entire ConceptNameCodeSequence, including items
+ * exceeding the value multiplicity restriction of "1"
+ * @return a reference to the entire ConceptNameCodeSequence
+ */
+ virtual OFVector<CodeSequenceMacro*>& getEntireConceptNameCodeSequence();
+
+ /** Get DateTime
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDateTime(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Date
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDate(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Time
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getTime(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get PersonName
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPersonName(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get UID
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getUID(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get TextValue
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getTextValue(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get reference to the ConceptCodeSequence
+ * @return a reference to the ConceptCodeSequence
+ */
+ virtual CodeSequenceMacro* getConceptCodeSequence();
+
+ /** Get a reference to the entire ConceptCodeSequence, including items
+ * exceeding the value multiplicity restriction of "1"
+ * @return a reference to the entire ConceptCodeSequence
+ */
+ virtual OFVector<CodeSequenceMacro*>& getEntireConceptCodeSequence();
+
+ /** Get NumericValue
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getNumericValue(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get FloatingPointValue
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getFloatingPointValue(Float64 &value,
+ const signed long pos = 0) const;
+
+ /** Get RationalNumeratorValue
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getRationalNumeratorValue(Sint32 &value,
+ const signed long pos = 0) const;
+
+ /** Get RationalDenominatorValue
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getRationalDenominatorValue(Uint32 &value,
+ const signed long pos = 0) const;
+
+ /** Get reference to the MeasurementUnitsCodeSequence
+ * @return a reference to the MeasurementUnitsCodeSequence
+ */
+ virtual CodeSequenceMacro* getMeasurementUnitsCodeSequence();
+
+ /** Get a reference to the entire MeasurementUnitsCodeSequence, including items
+ * exceeding the value multiplicity restriction of "1"
+ * @return a reference to the entire MeasurementUnitsCodeSequence
+ */
+ virtual OFVector<CodeSequenceMacro*>& getEntireMeasurementUnitsCodeSequence();
+
+ /** Get reference to the ReferencedSOPSequence
+ * @return a reference to the ReferencedSOPSequence
+ */
+ virtual ReferencedSOPSequenceItem* getReferencedSOPSequence();
+
+ /** Get a reference to the entire ReferencedSOPSequence, including items
+ * exceeding the value multiplicity restriction of "1"
+ * @return a reference to the entire ReferencedSOPSequence
+ */
+ virtual OFVector<ReferencedSOPSequenceItem*>& getEntireReferencedSOPSequence();
+
+ /** Set ValueType
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setValueType(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set ValueType
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value'. Does nothing, here for consistency with
+ * other set() functions.
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setValueType(const ValueType value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set DateTime
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDateTime(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Date
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDate(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Time
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (TM) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setTime(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set PersonName
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (PN) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPersonName(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set UID
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setUID(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set TextValue
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setTextValue(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set NumericValue
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (DS) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setNumericValue(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set FloatingPointValue
+ * @param value Value to be set (single value only) or "" for no value
+ * @param pos Index of the value to be set (starting from 0)
+ * @param checkValue Check 'value' for conformance with VR (FD) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setFloatingPointValue(const Float64 value,
+ const unsigned long pos = 0,
+ const OFBool checkValue = OFTrue);
+
+ /** Set RationalNumeratorValue
+ * @param value Value to be set (single value only) or "" for no value
+ * @param pos Index of the value to be set (starting from 0)
+ * @param checkValue Check 'value' for conformance with VR (SL) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setRationalNumeratorValue(const Sint32 value,
+ const unsigned long pos = 0,
+ const OFBool checkValue = OFTrue);
+
+ /** Set RationalDenominatorValue
+ * @param value Value to be set (single value only) or "" for no value
+ * @param pos Index of the value to be set (starting from 0)
+ * @param checkValue Check 'value' for conformance with VR (UL) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setRationalDenominatorValue(const Uint32 value,
+ const unsigned long pos = 0,
+ const OFBool checkValue = OFTrue);
+
+ virtual OFString toString();
+
+protected:
+
+ /// The name of this module ("ContentItemMacro")
+ static const OFString m_ModuleName;
+
+ /// ConceptNameCodeSequence
+ OFVector<CodeSequenceMacro*> m_ConceptNameCodeSequence;
+
+ /// ConceptCodeSequence
+ OFVector<CodeSequenceMacro*> m_ConceptCodeSequence;
+
+ /// MeasurementUnitsCodeSequence
+ OFVector<CodeSequenceMacro*> m_MeasurementUnitsCodeSequence;
+
+ /// ReferencedSOPSequence
+ OFVector<ReferencedSOPSequenceItem*> m_ReferencedSOPSequence;
+};
+
+#endif // IODCONTENTITEMMACRO_H
/*
*
- * Copyright (C) 2015, Open Connections GmbH
+ * Copyright (C) 2015-2016, Open Connections GmbH
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation are maintained by
#define IODIMAGE_H
#include "dcmtk/config/osconfig.h"
+#include "dcmtk/ofstd/ofutil.h"
+#include "dcmtk/ofstd/ofvriant.h"
#include "dcmtk/dcmiod/iodcommn.h"
#include "dcmtk/dcmiod/modgeneralimage.h"
-#include "dcmtk/dcmiod/modimagepixel.h"
+#include "dcmtk/dcmiod/modimagepixelvariant.h"
+
+class IODDoubleFloatingPointImagePixelModule;
+class IODFloatingPointImagePixelModule;
+template<typename>
+class IODImagePixelModule;
/** Class for managing common image IOD attributes. At the moment support for
* the palette-related attributes and the smallest/largest image pixel value
* attributes is still missing. Also, pixel data must be handled separately.
+ * However, pixel-data related attributes are provided by the Image Pixel
+ * Module, the Floating Point Image Pixel Module or the Double Floating Point
+ * Image Pixel Module, based on the provided template parameter.
* Modules supported on top of DcmIODCommon: General Image Module and
* Image Pixel Module.
*/
-class DCMTK_DCMIOD_EXPORT DcmIODImage :
- public DcmIODCommon
+#ifdef DCMTK_USE_CXX11_STL
+template<typename T,typename... Types>
+struct DcmIODImageHasType
+: std::false_type {};
+
+template<typename T,typename... Types>
+struct DcmIODImageHasType<T,T,Types...>
+: std::true_type {};
+
+template<typename T,typename T0,typename... Types>
+struct DcmIODImageHasType<T,T0,Types...>
+: DcmIODImageHasType<T,Types...>::type {};
+
+template<typename... Types>
+#else
+template<OFVARIADIC_DECLARE_TEMPLATE_PARAMETER_PACK_WITH_DEFAULTS(T)>
+#endif
+class DcmIODImage : public DcmIODCommon
{
public:
- /** Constructor
+ /** typedef for old compilers that do not define the type 'DcmIODImage' in
+ * derived classes.
*/
- DcmIODImage();
+ typedef DcmIODImage IODImage;
- /** Get General Image Module
- * @return Reference to General Image Module
+ /** A good comment would be nice, but I have nothing in mind
*/
- IODGeneralImageModule& getGeneralImage();
+#ifdef DCMTK_USE_CXX11_STL
+ using IODImagePixelModuleType = IODImagePixelVariant<Types...>;
+#else
+ typedef IODImagePixelVariant<OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)> IODImagePixelModuleType;
+#endif
- /** Get Image Pixel Module
- * @return Reference to Image Pixel Module
+ /** Constructor, creates new DcmIODImage instance with integer-based pixel data.
*/
- IODImagePixelModule& getImagePixel();
+ DcmIODImage()
+ : DcmIODCommon()
+ , m_GeneralImage(getData(), getRules())
+ , m_ImagePixel()
+ {
+
+ }
+
+ /** Constructor, constructs new DcmIODImage instance with integer, float or
+ * double based Image Pixel Module (i. e. Image Pixel Module, Floating Point
+ * Image Pixel Module or the Double Floating Point Image Pixel Module), based
+ * on the provided Image Pixel module type.
+ */
+ template<typename ImagePixel>
+ DcmIODImage(OFin_place_type_t(ImagePixel))
+ : DcmIODCommon()
+ , m_GeneralImage(getData(), getRules())
+ , m_ImagePixel(ImagePixel(getData(), getRules()))
+ {
+
+ }
/** Virtual Destructor
*/
- virtual ~DcmIODImage();
+ virtual ~DcmIODImage()
+ {
+
+ }
+
+ /** Get General Image Module
+ * @return Reference to General Image Module
+ */
+ IODGeneralImageModule& getGeneralImage()
+ {
+ return m_GeneralImage;
+ }
+
+ /** Get Image Pixel Module (variant)
+ * @return Reference to Image Pixel Module
+ */
+ IODImagePixelModuleType& getImagePixel()
+ {
+ return m_ImagePixel;
+ }
/** Clear (removes) all attributes handled by the modules of this IOD.
* IOD Rules are not reset.
*/
- virtual void clearData();
+ virtual void clearData()
+ {
+ DcmIODCommon::clearData();
+ m_GeneralImage.clearData();
+ m_ImagePixel.clearData();
+ }
/** Read common image module attributes (all those handled by this class)
* from given item. Reads attributes from base class DcmIODCommon before.
* should be read
* @return EC_Normal if successful, an error code otherwise
*/
- virtual OFCondition read(DcmItem &dataset);
+ virtual OFCondition read(DcmItem &dataset)
+ {
+ // re-initialize object
+ clearData();
+
+ // read from base classes
+ DcmIODCommon::read(dataset);
+ m_GeneralImage.read(dataset, OFTrue /* clear old data */);
+
+ return readFloatingPointDoubleImagePixel<IODDoubleFloatingPointImagePixelModule>(dataset);
+ }
/** Write current common image module's attributes to DICOM dataset. Also
* writes attributes of base class DcmIODCommon afterwards.
- * @param dataset Reference to DICOM dataset to which the current document
- * should be written. The dataset is not cleared before writing
+ * @param dataset Reference to DICOM dataset to which the current data
+ * should be written. The dataset is not cleared before writing
* to it!
* @return EC_Normal if successful, an error code otherwise
*/
- virtual OFCondition write(DcmItem &dataset);
+ virtual OFCondition write(DcmItem &dataset)
+ {
+ OFCondition result = EC_Normal;
+
+ // Write base class attributes to dataset
+ result = DcmIODCommon::write(dataset);
+
+ // Write extra modules to dataset
+ if (result.good())
+ result = m_GeneralImage.write(dataset);
+ if (result.good())
+ result = m_ImagePixel.write(dataset);
+
+ return result;
+ }
private:
+ template<typename T>
+#ifdef DCMTK_USE_CXX11_STL
+ typename std::enable_if<DcmIODImageHasType<T,Types...>::value,OFCondition>::type
+#else
+ OFTypename OFenable_if
+ <
+ (OFvariadic_find_type<T,OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)>::value != -1),
+ OFCondition
+ >::type
+#endif
+ readFloatingPointDoubleImagePixel(DcmItem& dataset)
+ {
+ if (dataset.tagExists(DCM_DoubleFloatPixelData))
+ return OFget<T>(&(m_ImagePixel = T(getData(),getRules())))->read(dataset);
+ return readFloatingPointImagePixel<IODFloatingPointImagePixelModule>(dataset);
+ }
+
+ template<typename T>
+#ifdef DCMTK_USE_CXX11_STL
+ typename std::enable_if<!DcmIODImageHasType<T,Types...>::value,OFCondition>::type
+#else
+ OFTypename OFenable_if
+ <
+ (OFvariadic_find_type<T,OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)>::value == -1),
+ OFCondition
+ >::type
+#endif
+ readFloatingPointDoubleImagePixel(DcmItem& dataset)
+ {
+ return readFloatingPointImagePixel<IODFloatingPointImagePixelModule>(dataset);
+ }
+
+ template<typename T>
+#ifdef DCMTK_USE_CXX11_STL
+ typename std::enable_if<DcmIODImageHasType<T,Types...>::value,OFCondition>::type
+#else
+ OFTypename OFenable_if
+ <
+ (OFvariadic_find_type<T,OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)>::value != -1),
+ OFCondition
+ >::type
+#endif
+ readFloatingPointImagePixel(DcmItem& dataset)
+ {
+ if (dataset.tagExists(DCM_FloatPixelData))
+ return OFget<T>(&(m_ImagePixel = T(getData(),getRules())))->read(dataset);
+ return readIntegerImagePixel(dataset);
+ }
+
+ template<typename T>
+#ifdef DCMTK_USE_CXX11_STL
+ typename std::enable_if<!DcmIODImageHasType<T,Types...>::value,OFCondition>::type
+#else
+ OFTypename OFenable_if
+ <
+ (OFvariadic_find_type<T,OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)>::value == -1),
+ OFCondition
+ >::type
+#endif
+ readFloatingPointImagePixel(DcmItem& dataset)
+ {
+ return readIntegerImagePixel(dataset);
+ }
+
+ OFCondition readIntegerImagePixel(DcmItem& dataset)
+ {
+ Uint16 allocated, representation;
+ if
+ (
+ dataset.tagExists(DCM_PixelData) &&
+ dataset.findAndGetUint16(DCM_BitsAllocated, allocated).good() &&
+ dataset.findAndGetUint16(DCM_PixelRepresentation, representation).good()
+ )
+ switch ((allocated > 8 ? 2 : 0) | (representation ? 1 : 0))
+ {
+ case 0:
+ return readImagePixel<Uint8>(dataset);
+ case 1:
+ return readImagePixel<Sint8>(dataset);
+ case 2:
+ return readImagePixel<Uint16>(dataset);
+ case 3:
+ return readImagePixel<Sint16>(dataset);
+ default:
+ break;
+ }
+ return IOD_EC_InvalidPixelData;
+ }
+
+ template<typename T>
+#ifdef DCMTK_USE_CXX11_STL
+ typename std::enable_if<DcmIODImageHasType<T,Types...>::value,OFCondition>::type
+#else
+ OFTypename OFenable_if
+ <
+ (OFvariadic_find_type<IODImagePixelModule<T>,OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)>::value != -1),
+ OFCondition
+ >::type
+#endif
+ readImagePixel(DcmItem& dataset)
+ {
+ return OFget<IODImagePixelModule<T> >(&(m_ImagePixel = IODImagePixelModule<T>(getData(),getRules())))->read(dataset);
+ }
+
+ template<typename T>
+#ifdef DCMTK_USE_CXX11_STL
+ typename std::enable_if<!DcmIODImageHasType<T,Types...>::value,OFCondition>::type
+#else
+ OFTypename OFenable_if
+ <
+ (OFvariadic_find_type<IODImagePixelModule<T>,OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)>::value == -1),
+ OFCondition
+ >::type
+#endif
+ readImagePixel(DcmItem& dataset)
+ {
+ // Avoid compiler warning about unused parameter
+ OFstatic_cast(void, dataset);
+ return IOD_EC_InvalidPixelData;
+ }
+
/// General Image Module
IODGeneralImageModule m_GeneralImage;
/// Image Pixel Module
- IODImagePixelModule m_ImagePixel;
-
+ IODImagePixelModuleType m_ImagePixel;
};
#endif // IODIMAGE_H
*/
CodeSequenceMacro(const CodeSequenceMacro& rhs);
-
/** Convenience constructor to set initial values
* @param item The item to be used for data storage. If NULL, the
* class creates an empty data container.
*/
virtual OFCondition getCodeMeaning(OFString &value,
const signed long pos = 0);
+
+ /** Returns whether code is empty, i.e. no component of the Code Sequence Macro
+ * is set. This can be used in order to find out whether someone actually
+ * wanted to fill in a valid code as opposed of leaving it unset.
+ * @return OFTrue if no component of this class is set, OFFalse otherwise.
+ */
+ virtual OFBool empty();
+
/** Set Code Value
* @param value The value to set
* @param checkValue If OFTrue, VM and VR of value are checked
const OFString &schemeVersion = "",
const OFBool checkValue = OFTrue);
+ virtual OFString toString();
+
};
/** Constructor
* @param modifierType Denotes type of Modifier Code Sequence (i.e. 1, 1C,
- * 2, 2C or 3), default is 3
+ * 2, 2C or 3)
* @param modifierVM Denotes how many items are allowed in the Modifier Code
* Sequence
* @param modifierSeq Tag of the sequence that holds the modifier codes.
* The default is the Modifier Code Sequence.
*/
- CodeWithModifiers(const OFString& modifierType = "3",
+ CodeWithModifiers(const OFString& modifierType,
const OFString& modifierVM = "1-n",
const DcmTagKey& modifierSeq = DCM_ModifierCodeSequence);
private:
+ /// Private undefined default constructor
+ CodeWithModifiers();
+
/// Items of Modifier Code Sequence
OFVector<CodeSequenceMacro*> m_Modifiers;
};
+
/** Class implementing the SOP Instance Reference Macro
*/
class DCMTK_DCMIOD_EXPORT SOPInstanceReferenceMacro : public IODComponent
/** Class representing the Image SOP Instance Reference Macro
- * TODO: Change implementation to use IODComponent class inherited anyway
- * from SOPInstanceReferenceMacro
*/
class DCMTK_DCMIOD_EXPORT ImageSOPInstanceReferenceMacro : public SOPInstanceReferenceMacro
{
};
-/** Class representing an item within the the Primary Anatomic Structure Macro
- */
-class DCMTK_DCMIOD_EXPORT PrimaryAnatomicStructureMacroItem
-{
-
-public:
-
- /** Constructor
- */
- PrimaryAnatomicStructureMacroItem();
-
- /** Copy constructor
- * @param rhs The item to copy from
- */
- PrimaryAnatomicStructureMacroItem(const PrimaryAnatomicStructureMacroItem& rhs);
-
- /** Virtual destructor
- */
- virtual ~PrimaryAnatomicStructureMacroItem();
-
- /** Clear (removes) all attributes handled by the modules of this component.
- */
- virtual void clearData();
-
- /** Check whether this component's data satisfies the underlying
- * rules
- * @param quiet If OFTrue, not error / warning messages will be produced.
- * Only the returned error code will indicate error or OK. Per
- * default, logging output is produced.
- * @result EC_Normal if rules are satisfied, error otherwise
- */
- virtual OFCondition check(const OFBool quiet = OFFalse);
-
- /** Return the Anatomic Structure Code
- * @return Reference to the anatomic structure code
- */
- virtual CodeSequenceMacro& getAnatomicStructure();
-
- /** Return the Anatomic Structure Modifier Codes
- * @return The Anatomic Structure Modifier Codes
- */
- virtual OFVector<CodeSequenceMacro*>& getAnatomicStructureModifier();
-
- /** Reads Primary Anatomic Region Sequence Item from given item
- * @param source The item to read from
- * @param clearOldData If OFTrue, old data is cleared first, otherwise it is
- * kept where not overwritten
- * @return EC_Normal if successful, error otherwise
- */
- virtual OFCondition read(DcmItem& source,
- const OFBool clearOldData = OFTrue);
-
- /** Write Anatomic Region Sequence Item to given item
- * @param item The item to write to
- * @return EC_Normal if successful, error otherwise
- */
- virtual OFCondition write(DcmItem& item);
-
- /** Assignment operator (performs deep copy)
- * @param rhs The item to copy from
- * @return result
- */
- PrimaryAnatomicStructureMacroItem& operator=(const PrimaryAnatomicStructureMacroItem &rhs);
-
-private:
-
- /// Primary Anatomic Structure Sequence Item
- CodeSequenceMacro m_AnatomicStructure;
-
- /// Primary Anatomic Structure Structure Modifier Sequence (SQ, 1-n, 3)
- OFVector<CodeSequenceMacro*> m_AnatomicStructureModifier;
-
-};
-
-
/** Class representing the Primary Anatomic Structure Macro
*/
-class DCMTK_DCMIOD_EXPORT PrimaryAnatomicStructureMacro
-{
-
-public:
-
- /** Constructor
- */
- PrimaryAnatomicStructureMacro();
-
- /** Copy constructor
- * @param rhs The macro to copy from
- */
- PrimaryAnatomicStructureMacro(const PrimaryAnatomicStructureMacro& rhs);
-
- /** Virtual destructor
- */
- virtual ~PrimaryAnatomicStructureMacro();
-
- /** Clear (removes) all attributes handled by the modules of this component.
- */
- virtual void clearData();
-
- /** Check whether this component's data satisfies the underlying
- * rules
- * @param quiet If OFTrue, not error / warning messages will be produced.
- * Only the returned error code will indicate error or OK. Per
- * default, logging output is produced.
- * @result EC_Normal if rules are satisfied, error otherwise
- */
- virtual OFCondition check(const OFBool quiet = OFFalse);
-
- /** Return Primary Anatomic Structure items
- * @return Reference to items of this macro
- */
- virtual OFVector<PrimaryAnatomicStructureMacroItem*>& getPrimaryAnatomicStructure();
-
- /** Reads Primary Anatomic Region Sequence (i.e.\ this macro) from given item
- * @param source The item to read from
- * @param clearOldData If OFTrue, old data is cleared first, otherwise it is
- * kept where not overwritten
- * @return EC_Normal if reading was fine, error otherwise
- */
- virtual OFCondition read(DcmItem& source,
- const OFBool clearOldData = OFTrue);
-
- /** Write Anatomic Region Sequence (i.e.\ this macro) to given item
- * @param item The item to write to
- * @return EC_Normal if writing was fine, error otherwise
- */
- virtual OFCondition write(DcmItem& item);
-
- /** Assignment operator
- * @param rhs The macro to copy from
- * @result Reference to "this" object
- */
- PrimaryAnatomicStructureMacro& operator=(const PrimaryAnatomicStructureMacro &rhs);
-
-private:
-
- /// Primary Anatomic Structure Sequence (SQ, 0-1, 3)
- OFVector<PrimaryAnatomicStructureMacroItem*> m_PrimaryAnatomicStructure;
-};
-
+typedef CodeWithModifiers PrimaryAnatomicStructureMacro;
/** Class representing the General Anatomy Mandatory or Optional Macro
*/
*/
GeneralAnatomyMacro(const OFString& type);
- /** Copy constructor
+ /** Copy constructor, creates deep copy.
* @param rhs The macro to copy from
*/
GeneralAnatomyMacro(const GeneralAnatomyMacro& rhs);
*/
GeneralAnatomyMacro& operator=(const GeneralAnatomyMacro &rhs);
+ /** Comparison operator that compares the normalized value of this object
+ * with a given object of the same type, i.e.\ the elements within both
+ * objects (this and rhs parameter) are compared by value.
+ * @param rhs the right hand side of the comparison
+ * @return 0 if the object values are equal.
+ * -1 if either the value of the first component that does not match
+ * is lower in the rhs object, or all compared components match
+ * but the rhs component is shorter.
+ * 1 if either the value of the first component that does not match
+ * is greater in the rhs object, or all compared components match
+ * but the rhs component is longer.
+ */
+ virtual int compare(const GeneralAnatomyMacro& rhs) const;
+
private:
/// Type (1,2,3) of Anatomic Region Sequence.
- OFString m_Type; // TODO: Make enum?
+ OFString m_Type;
/// Anatomic Region Sequence (SQ, 1, 1) (Code Sequence Macro within item of
/// Anatomic Region Sequence))
/** Class representing the HL7 V2 Hierarchic Designator Macro
*/
-class HL7HierarchicDesignatorMacro : public IODComponent
+class DCMTK_DCMIOD_EXPORT HL7HierarchicDesignatorMacro : public IODComponent
{
public:
/** Class representing the Mandatory View and Slice Progression Direction Macro
*/
-class MandatoryViewAndSliceProgressionDirectionMacro : public IODComponent
+class DCMTK_DCMIOD_EXPORT MandatoryViewAndSliceProgressionDirectionMacro : public IODComponent
{
public:
#include "dcmtk/dcmdata/dcsequen.h"
#include "dcmtk/dcmdata/dcdatset.h"
#include "dcmtk/dcmdata/dcdatutl.h"
+#include "dcmtk/ofstd/ofdate.h"
+#include "dcmtk/ofstd/oftime.h"
#include "dcmtk/dcmiod/ioddef.h"
#include "dcmtk/dcmiod/iodrules.h"
#include "dcmtk/dcmiod/iodtypes.h"
/* If we do not have data, insert empty for type 2 */
else if (type == "2")
{
- destination.insertEmptyElement(seqKey);
+ destination.insertEmptyElement(seqKey);
}
else if (type == "1C")
{
DCMIOD_TRACE("Skipping type 1C sequence " << seqKey << ": No data or incomplete data available");
}
+ else if (type == "3")
+ {
+ DCMIOD_TRACE("Skipping type 3 sequence " << seqKey << ": No data or incomplete data available");
+ }
/* Check outcome */
checkSubSequence(result, destination, seqKey, "1", type, module);
}
}
}
+
+ template <typename ModuleType>
+ static OFCondition setContentDateAndTimeNow(ModuleType& module)
+ {
+ OFDate date;
+ date.setCurrentDate();
+ OFString tempstr;
+ date.getISOFormattedDate(tempstr, OFFalse /* no delimiters */);
+ OFCondition result = module.setContentDate(tempstr);
+ if (result.good())
+ {
+ OFTime time;
+ time.setCurrentTime();
+ time.getISOFormattedTime(tempstr, OFTrue /* include seconds */, OFFalse, OFFalse, OFFalse);
+ result = module.setContentTime(tempstr);
+ }
+ return result;
+ }
+
+
/** Function that takes a string representation of a tag key and
* converts it to a tag key instance if possible
* @param keyString String of the format "(gggg,eeee)"
IODComponent(IODComponent* parent = NULL);
/** Assignment operator, copies contained item and rule set from rhs to
- * "this" attribute set. Produces clone copy, i.e.\ the contained item
- * and the rule set is copied. The parent component is set to NULL.
+ * "this" attribute set. Performs deep copy, i.e.\ the contained item
+ * and the rule set are copied. The parent component is set to NULL.
* @param rhs The IODComponent to be assigned
* @return Reference to this module
*/
IODRules& rules,
DcmItem& destination,
const OFString& componentName);
+
protected:
- /// Shared pointer to the data handled by this class. The item may contain
- /// more attributes than this class is actually responsible for
- OFshared_ptr<DcmItem> m_Item;
+ /// Shared pointer to the data handled by this class. The item may contain
+ /// more attributes than this class is actually responsible for
+ OFshared_ptr<DcmItem> m_Item;
+
+ /// Rules describing the attributes governed by this class
+ OFshared_ptr<IODRules> m_Rules;
- /// Rules describing the attributes governed by this class
- OFshared_ptr<IODRules> m_Rules;
+ /// The parent component (may be NULL) of this class
+ IODComponent* m_Parent;
- /// The parent component (may be NULL) of this class
- IODComponent* m_Parent;
};
/** The class IODModule is an IODComponent without parent component since
* a module does always belong to the top level dataset.
+ * Also, different from IODComponents, modules usually share data and
+ * rules. This is taken into account in the assignment operator and
+ * copy constructor which only create a shallow copy, i.e. modules
+ * share the same data and rules afterwards.
*/
class DCMTK_DCMIOD_EXPORT IODModule : public IODComponent
{
*/
IODModule();
+ /** Copy constructor, creates shallow copy
+ * @param rhs The module to copy from
+ */
+ IODModule(const IODModule& rhs);
+
+ /** Assignment operator, creates shallow copy
+ * @param rhs The module to copy from
+ * @return Returns reference to this object
+ */
+ IODModule& operator=(const IODModule& rhs);
+
+ /** Desctructor
+ */
~IODModule() {};
};
private:
+ void freeMemory();
+
/// Vector with all items of the Referenced Series Sequence
OFVector<IODSeriesAndInstanceReferenceMacro::ReferencedSeriesItem*> m_ReferenceSeriesItems;
public:
/** Convenient struct containing all information required for setting
- * equipment information for use by external code)
+ * enhanced equipment information (for use by external code)
*/
- struct EquipmentInfo
+ struct DCMTK_DCMIOD_EXPORT EquipmentInfo
{
/** Default Constructor
m_Manufacturer(),
m_ManufacturerModelName(),
m_DeviceSerialNumber(),
- m_SoftwareVersions() {};
+ m_SoftwareVersions() {}
/** Convenience Constructor setting all values
* @param manufacturer Manufacturer
- * @param modelName Model name
+ * @param manufacturerModelName Manufacturer's model name
* @param deviceSerialNumber Serial number
- * *@param softwareVersions Software versions
+ * @param softwareVersions Software versions
*/
EquipmentInfo(const OFString& manufacturer,
- const OFString& modelName,
+ const OFString& manufacturerModelName,
const OFString& deviceSerialNumber,
const OFString& softwareVersions) :
m_Manufacturer(manufacturer),
- m_ManufacturerModelName(modelName),
+ m_ManufacturerModelName(manufacturerModelName),
m_DeviceSerialNumber(deviceSerialNumber),
- m_SoftwareVersions(softwareVersions) {};
+ m_SoftwareVersions(softwareVersions) {}
- // Manufacturer (VM 1)
+ /** Perform simple check whether all equipment data is filled in. Does not
+ * check VR or VM (will be checked in write() routine, though)
+ * @return OFTrue if data is complete, OFFalse otherwise
+ */
+ OFBool isDataComplete() const
+ {
+ if (m_Manufacturer.empty() || m_ManufacturerModelName.empty() || m_DeviceSerialNumber.empty() || m_SoftwareVersions.empty())
+ {
+ return OFFalse;
+ }
+ return OFTrue;
+ }
+
+ /// Manufacturer (VM 1)
OFString m_Manufacturer;
- // Manufacturer's Model Name (VM 1)
+ /// Manufacturer's Model Name (VM 1)
OFString m_ManufacturerModelName;
- // Device Serial Number (VM 1)
+ /// Device Serial Number (VM 1)
OFString m_DeviceSerialNumber;
- // Software Version(s) (VM 1-n)
+ /// Software Version(s) (VM 1-n)
OFString m_SoftwareVersions;
};
/** Constructor
- * @param item The item to be used for data storage. If NULL, the
- * class creates an empty data container.
+ * @param item The item to be used for data storage. If NULL, the class
+ * creates an empty data container.
* @param rules The rule set for this class. If NULL, the class creates
* one from scratch and adds its values.
*/
static OFCondition create(const EquipmentInfo& info,
IODEnhGeneralEquipmentModule* equipment);
- /** Resets rules to their original values.
- */
- virtual void resetRules();
+ /** Resets rules to their original values.
+ */
+ virtual void resetRules();
/** Get name of module
* @return Name of the module ("EnhancedEquipmentModule")
virtual OFCondition setSoftwareVersions(const OFString &value,
const OFBool checkValue = OFTrue);
+ /** Set all equipment information at once
+ * @param info The equipment information to be set.
+ * @return EC_Normal if values could be set, error otherwise
+ */
virtual OFCondition set(const EquipmentInfo& info);
private:
public:
- /** Convenient struct containing all information required for setting
- * equipment information for use by external code)
+ /** Convenient struct containing commonly used equipment information
+ * (for use by external code)
*/
- struct EquipmentInfo
+ struct DCMTK_DCMIOD_EXPORT EquipmentInfo
{
- // Manufacturer (VM 1)
+
+ /** Default Constructor
+ */
+ EquipmentInfo() {}
+
+ /** Convenience Constructor setting commonly used values
+ * @param manufacturer Manufacturer
+ * @param manufacturerModelName Manufacturer's model name
+ * @param deviceSerialNumber Serial number
+ * @param softwareVersions Software versions
+ */
+ EquipmentInfo(const OFString& manufacturer,
+ const OFString& manufacturerModelName,
+ const OFString& deviceSerialNumber,
+ const OFString& softwareVersions) :
+ m_Manufacturer(manufacturer),
+ m_ManufacturerModelName(manufacturerModelName),
+ m_DeviceSerialNumber(deviceSerialNumber),
+ m_SoftwareVersions(softwareVersions) {}
+
+ /// Manufacturer (VM 1)
OFString m_Manufacturer;
- // Manufacturer's Model Name (VM 1)
+ /// Manufacturer's Model Name (VM 1)
OFString m_ManufacturerModelName;
- // Device Serial Number (VM 1)
+ /// Device Serial Number (VM 1)
OFString m_DeviceSerialNumber;
- // Software Version(s) (VM 1-n)
+ /// Software Version(s) (VM 1-n)
OFString m_SoftwareVersions;
};
/** Constructor
- * @param item The item to be used for data storage. If NULL, the
- * class creates an empty data container.
- * @param rules The rule set for this class. If NULL, the class creates
- * one from scratch and adds its values.
- */
+ * @param item The item to be used for data storage. If NULL, the class
+ * creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ */
IODGeneralEquipmentModule(OFshared_ptr<DcmItem> item,
OFshared_ptr<IODRules> rules);
/** Get name of module
* @return Name of the module ("GeneralEquipmentModule")
- * depending on configuration)
*/
virtual OFString getName() const;
private:
- /// Name of the modue ("GeneralEquipmentModule")
+ /// Name of the module ("GeneralEquipmentModule")
OFString m_ModuleName;
};
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmiod
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Floating Point and Double Floating Point Image Pixel Module
+ *
+ */
+
+#ifndef MODFLOATINGPOINTIMAGEPIXEL_H
+#define MODFLOATINGPOINTIMAGEPIXEL_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmiod/modimagepixelbase.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+
+/** Class representing Floating Point Image Pixel Module:
+ *
+ * Samples Per Pixel: (US, 1, 1)
+ * Photometric Interpretation (CS, 1, 1)
+ * Rows: (US, 1, 1)
+ * Columns: (US, 1, 1)
+ * Bits Allocated: (US, 1 1)
+ * Pixel Aspect Ratio: (IS, 2, 1C)
+ * Float Pixel Padding Value: (FL, 1, 3)
+ * Float Pixel Padding Range Limit: (FL, 1, 1C)
+ */
+class DCMTK_DCMIOD_EXPORT IODFloatingPointImagePixelModule : public IODImagePixelBase
+{
+
+public:
+
+ /// Data type of pixels
+ typedef Float32 value_type;
+
+ static const DcmTagKey pixel_data_tag;
+
+ /** Constructor
+ * @param item The item to be used for data storage. If NULL, the
+ * class creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ */
+ IODFloatingPointImagePixelModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules);
+
+ /** Constructor
+ */
+ IODFloatingPointImagePixelModule();
+
+ /** Destructor
+ */
+ virtual ~IODFloatingPointImagePixelModule();
+
+ /** Read attributes from given item into this class
+ * @param source The source to read from
+ * @param clearOldData If OFTrue, old data is cleared before reading. Otherwise
+ * old data is overwritten (or amended)
+ * @result EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& source,
+ const OFBool clearOldData = OFTrue);
+
+ /** Write attributes from this class into given item
+ * @param destination The item to write to
+ * @result EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& destination);
+
+ /** Resets rules to their original values
+ */
+ virtual void resetRules();
+
+ /** Get name of module
+ * @return Name of the module ("FloatingPointImagePixelModule")
+ */
+ virtual OFString getName() const;
+
+ /** Get pixel data type, always returns DataType::FLOAT for this class.
+ * @return The data type of the pixel data
+ */
+ virtual DataType getDataType() const;
+
+ /** Get Float Pixel Padding Value
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getFloatPixelPaddingValue(Float32& value,
+ const signed long pos = 0);
+
+ /** Get Float Pixel Padding Range Limit
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getFloatPixelPaddingRangeLimit(Float32& value,
+ const signed long pos = 0);
+
+ /** Set Float Pixel Pixel Padding Value
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value' for conformance with VR (FL) and consistency
+ * with other attributes if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setFloatPixelPaddingValue(const Float32 value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Float Pixel Padding Range Limit
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value' for conformance with VR (FL) and consistency
+ * with other attributes if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setFloatPixelPaddingRangeLimit(const Float32 value,
+ const OFBool checkValue = OFTrue);
+
+private:
+
+ /// This module's name ("FloatingPointImagePixelModule")
+ static const OFString m_ModuleName;
+
+};
+
+
+/** Class representing Double Floating Point Image Pixel Module:
+ *
+ * Samples Per Pixel: (US, 1, 1)
+ * Photometric Interpretation (CS, 1, 1)
+ * Rows: (US, 1, 1)
+ * Columns: (US, 1, 1)
+ * Bits Allocated: (US, 1 1)
+ * Pixel Aspect Ratio: (IS, 2, 1C)
+ * Double Float Pixel Padding Value: (FD, 1, 3)
+ * Double Float Pixel Padding Range Limit: (FD, 1, 1C)
+ */
+class DCMTK_DCMIOD_EXPORT IODDoubleFloatingPointImagePixelModule: public IODImagePixelBase
+{
+
+public:
+
+ /// Data type of pixels
+ typedef Float64 value_type;
+
+ static const DcmTagKey pixel_data_tag;
+
+ /** Constructor
+ * @param item The item to be used for data storage. If NULL, the
+ * class creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ */
+ IODDoubleFloatingPointImagePixelModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules);
+
+ /** Constructor
+ */
+ IODDoubleFloatingPointImagePixelModule();
+
+ /** Destructor
+ */
+ virtual ~IODDoubleFloatingPointImagePixelModule();
+
+ /** Read attributes from given item into this class
+ * @param source The source to read from
+ * @param clearOldData If OFTrue, old data is cleared before reading. Otherwise
+ * old data is overwritten (or amended)
+ * @result EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& source,
+ const OFBool clearOldData = OFTrue);
+
+ /** Write attributes from this class into given item
+ * @param destination The item to write to
+ * @result EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& destination);
+
+ /** Resets rules to their original values
+ */
+ virtual void resetRules();
+
+ /** Get name of module
+ * @return Name of the module ("DoubleFloatingPointImagePixelModule")
+ */
+ virtual OFString getName() const;
+
+ /** Get pixel data type, always returns DataType::DOUBLE for this class.
+ * @return The data type of the pixel data
+ */
+ virtual DataType getDataType() const;
+
+ /** Get Double Float Pixel Padding Value
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDoubleFloatPixelPaddingValue(Float64& value,
+ const signed long pos = 0);
+
+ /** Get Double Float Pixel Padding Range Limit
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDoubleFloatPixelPaddingRangeLimit(Float64& value,
+ const signed long pos = 0);
+
+ /** Set Double Float Pixel Pixel Padding Value
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value' for conformance with VR (FD) and consistency
+ * with other attributes if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDoubleFloatPixelPaddingValue(const Float64 value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Double Float Pixel Padding Range Limit
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value' for conformance with VR (FD) and consistency
+ * with other attributes if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDoubleFloatPixelPaddingRangeLimit(const Float64 value,
+ const OFBool checkValue = OFTrue);
+
+private:
+
+ /// This module's name ("DoubleFloatingPointImagePixelModule")
+ static const OFString m_ModuleName;
+
+};
+
+#endif // MODFLOATINGPOINTIMAGEPIXEL_H
/*
*
- * Copyright (C) 2015, Open Connections GmbH
+ * Copyright (C) 2015-2016, Open Connections GmbH
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation are maintained by
virtual OFCondition setPositionReferenceIndicator(const OFString &value,
const OFBool checkValue = OFTrue);
+ /** Make sure that the module contains a Frame of Reference Instance UID, i.e.\
+ * a new one is created if empty. An invalid UID is corrected if desired.
+ * @param correctInvalid Correct invalid UID if OFTrue, otherwise do nothing
+ *
+ */
+ void ensureFrameOfReferenceUID(const OFBool correctInvalid = OFFalse);
+
private:
* Study ID: (SH, 1, 2)
* Accession Number: (SH, 1, 2)
* Study Description: (LO, 1, 3)
- * Issuer of Accession Number Sequence: (SQ, 3, 1)
+ * Issuer of Accession Number Sequence: (SQ, 1, 3)
* Procedure Code Sequence: (SQ, 1-n, 3)
* Reason for Performed Procedure Code Sequence: (SQ, 1-n, 3)
*/
/*
*
- * Copyright (C) 2015, Open Connections GmbH
+ * Copyright (C) 2015-2016, Open Connections GmbH
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation are maintained by
#define MODIMAGEPIXEL_H
#include "dcmtk/config/osconfig.h"
-#include "dcmtk/dcmiod/modbase.h"
+#include "dcmtk/dcmiod/modimagepixelbase.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
-/** Class representing the General Image Module:
+/** Class representing the Image Pixel Module:
*
* Samples Per Pixel: (US, 1, 1)
* Photometric Interpretation (CS, 1, 1)
* Pixel Aspect Ratio: (IS, 2, 1C)
* ICC Profile: (OB, 1, 3)
*/
-class DCMTK_DCMIOD_EXPORT IODImagePixelModule : public IODModule
+template<typename T>
+class DCMTK_DCMIOD_EXPORT IODImagePixelModule : public IODImagePixelBase
{
public:
+ /// Data type of pixels
+ typedef T value_type;
+
+ static const DcmTagKey pixel_data_tag;
+
/** Constructor
* @param item The item to be used for data storage. If NULL, the
* class creates an empty data container.
*/
virtual ~IODImagePixelModule();
+ /** Read attributes from given item into this class
+ * @param source The source to read from
+ * @param clearOldData If OFTrue, old data is cleared before reading. Otherwise
+ * old data is overwritten (or amended)
+ * @result EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& source,
+ const OFBool clearOldData = OFTrue);
+
+ /** Write attributes from this class into given item
+ * @param destination The item to write to
+ * @result EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& destination);
+
/** Resets rules to their original values
*/
virtual void resetRules();
*/
virtual OFString getName() const;
- /** Get Samples per Pixel
- * @param value Reference to variable in which the value should be stored
- * @param pos Index of the value to get (0..vm-1)
- * @return EC_Normal if successful, an error code otherwise
+ /** Get pixel data type, always returns DataType::INTEGER for this class.
+ * @return The data type of the pixel data
*/
- virtual OFCondition getSamplesPerPixel(Uint16 &value,
- const signed long pos = 0);
-
- /** Get Photometric Interpretation
- * @param value Reference to variable in which the value should be stored
- * @param pos Index of the value to get (0..vm-1)
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition getPhotometricInterpretation(OFString&value,
- const signed long pos = 0);
-
- /** Get Rows
- * @param value Reference to variable in which the value should be stored
- * @param pos Index of the value to get (0..vm-1)
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition getRows(Uint16& value,
- const signed long pos = 0);
-
- /** Get Columns
- * @param value Reference to variable in which the value should be stored
- * @param pos Index of the value to get (0..vm-1)
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition getColumns(Uint16& value,
- const signed long pos = 0);
- /** Get Bits Allocated
- * @param value Reference to variable in which the value should be stored
- * @param pos Index of the value to get (0..vm-1)
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition getBitsAllocated(Uint16& value,
- const signed long pos = 0);
+ virtual DataType getDataType() const;
/** Get Bits Stored
* @param value Reference to variable in which the value should be stored
virtual OFCondition getPlanarConfiguration(Uint16& value,
const signed long pos = 0);
- /** Get Pixel Aspect Ratio
- * @param value Reference to variable in which the value should be stored
- * @param pos Index of the value to get (0..vm-1)
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition getPixelAspectRatio(Uint16& value,
- const signed long pos = 0);
-
/** Get ICC Profile
* @param values Reference to variable in which the values should be stored
* @return EC_Normal if successful, an error code otherwise
*/
virtual OFCondition getICCProfile(OFVector<Uint8>& values);
- /** set Samples per Pixel
+ /** Set Samples per Pixel
* @param value Reference to variable in which the value should be stored
* @param checkValue Check 'value' for conformance with VR (US) and VM (1) if enabled
* @return EC_Normal if successful, an error code otherwise
virtual OFCondition setPhotometricInterpretation(const OFString& value,
const OFBool checkValue = OFTrue);
- /** Set Rows
- * @param value Reference to variable in which the value should be stored
- * @param checkValue Check 'value'. Not evaluated (here for consistency
- * with other setter functions).
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition setRows(const Uint16 value,
- const OFBool checkValue = OFTrue);
-
- /** Set Columns
- * @param value Reference to variable in which the value should be stored
- * @param checkValue Check 'value'. Not evaluated (here for consistency
- * with other setter functions).
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition setColumns(const Uint16 value,
- const OFBool checkValue = OFTrue);
/** Set Bits Allocated
* @param value Reference to variable in which the value should be stored
* @param checkValue Check 'value'. Not evaluated (here for consistency
virtual OFCondition setPlanarConfiguration(const Uint16 value,
const OFBool checkValue = OFTrue);
- /** Set Pixel Aspect Ratio
- * @param verticalPixelSize The vertical pixel size (no unit)
- * @param horizontalPixelSize The horizontal pixel size (no unit)
- * @param checkValue Check 'value' for conformance with VR (IS)
- * @return EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition setPixelAspectRatio(const OFString& verticalPixelSize,
- const OFString& horizontalPixelSize,
- const OFBool checkValue = OFTrue);
-
/** Set ICC Profile
* @param values Reference to variable in which the values should be stored
* @param length Length of array provided in values parameter
*/
virtual OFCondition setICCProfile(const Uint8* values,
const size_t length);
+
private:
/// This module's name ("ImagePixelModule")
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmiod
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Base class for Image Pixel Module and related (e.g. Ploating Point)
+ *
+ */
+
+#ifndef MODIMAGEPIXELBASE_H
+#define MODIMAGEPIXELBASE_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmiod/modbase.h"
+
+/** Base class for deriving Image Pixel Module, Floating Point Image Pixel
+ * Module and Double Floating Point Image Pixel (and maybe more later)
+ */
+class DCMTK_DCMIOD_EXPORT IODImagePixelBase : public IODModule
+{
+
+public:
+
+ enum DataType
+ {
+ DATA_TYPE_UNKNOWN,
+ DATA_TYPE_FLOAT,
+ DATA_TYPE_DOUBLE,
+ DATA_TYPE_INTEGER
+ };
+
+
+ /** Constructor
+ * @param item The item to be used for data storage. If NULL, the
+ * class creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ */
+ IODImagePixelBase(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules);
+
+ /** Constructor
+ */
+ IODImagePixelBase();
+
+ /** Destructor
+ */
+ virtual ~IODImagePixelBase();
+
+ /** Resets rules to their original values
+ */
+ virtual void resetRules();
+
+ /** Get name of module
+ * @return Name of the module ("ImagePixelModule")
+ */
+ virtual OFString getName() const;
+
+ /** Get pixel data type
+ * @return The data type of the pixel data
+ */
+ virtual DataType getDataType() const = 0;
+
+ // -------------------------------------------------------------------------
+ // Getters for all attribute that appear in all Image Pixel Modules
+ // -------------------------------------------------------------------------
+
+ /** Get Samples per Pixel
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSamplesPerPixel(Uint16 &value,
+ const signed long pos = 0);
+
+ /** Get Photometric Interpretation
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPhotometricInterpretation(OFString&value,
+ const signed long pos = 0);
+
+ /** Get Rows
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getRows(Uint16& value,
+ const signed long pos = 0);
+
+ /** Get Columns
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getColumns(Uint16& value,
+ const signed long pos = 0);
+
+ /** Get Bits Allocated
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getBitsAllocated(Uint16& value,
+ const signed long pos = 0);
+
+ /** Get Pixel Aspect Ratio
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPixelAspectRatio(Uint16& value,
+ const signed long pos = 0);
+
+ // -------------------------------------------------------------------------
+ // Setters for all attribute that appear in all Image Pixel Modules and which
+ // do not have fixed values in sub classes.
+ // -------------------------------------------------------------------------
+
+ /** Set Rows
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value'. Not evaluated (here for consistency
+ * with other setter functions).
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setRows(const Uint16 value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Columns
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value'. Not evaluated (here for consistency
+ * with other setter functions).
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setColumns(const Uint16 value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Pixel Aspect Ratio
+ * @param verticalPixelSize The vertical pixel size (no unit)
+ * @param horizontalPixelSize The horizontal pixel size (no unit)
+ * @param checkValue Check 'value' for conformance with VR (IS)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPixelAspectRatio(const OFString& verticalPixelSize,
+ const OFString& horizontalPixelSize,
+ const OFBool checkValue = OFTrue);
+
+private:
+
+ /// This module's name ("ImagePixelBase")
+ static const OFString m_ModuleName;
+
+};
+
+#endif // MODIMAGEPIXELBASE_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmiod
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Base class for Image Pixel Module and related (e.g. Ploating Point)
+ *
+ */
+
+#ifndef MODIMAGEPIXELVARIANT_H
+#define MODIMAGEPIXELVARIANT_H
+
+#include "dcmtk/config/osconfig.h"
+
+#include "dcmtk/ofstd/ofvriant.h"
+#include "dcmtk/dcmiod/modimagepixelbase.h"
+
+
+/** Visitor for returning base class of given Image Pixel Module
+ */
+struct IODImagePixelVariantBaseVisitor
+{
+
+ /** Returns NULL since given argument is no pixel module at all
+ * @return OFnullptr
+ */
+ IODImagePixelBase* operator()( OFmonostate& )
+ {
+ return OFnullptr;
+ }
+
+ /** Returns the base class pointer of all pixel modules
+ * @param base IODImagePixelBase pointer to given class instance
+ * @return OFnullptr
+ */
+ IODImagePixelBase* operator()( IODImagePixelBase& base )
+ {
+ return &base;
+ }
+};
+
+/** Class representing different pixel modules from the DICOM standard:
+ * The class Image Pixel Module, the Floating Point Image Pixel module
+ * and the Double Floating Point Image Pixel module
+ */
+#ifdef DCMTK_USE_CXX11_STL
+template<typename... Types>
+class IODImagePixelVariant
+: public OFvariant<OFmonostate,Types...>
+#else
+template<OFVARIADIC_DECLARE_TEMPLATE_PARAMETER_PACK_WITH_DEFAULTS(T)>
+class IODImagePixelVariant
+: public OFvariant<OFmonostate,OFVARIADIC_TEMPLATE_PARAMETER_PACK(T)>
+#endif
+{
+
+public:
+
+ /** Constructor
+ */
+ IODImagePixelVariant()
+ : IODImagePixelVariant::variant()
+ {
+
+ }
+
+ /** Constructor, constructs pixel module based on given type
+ */
+ template<typename T>
+ IODImagePixelVariant(const T& t)
+ : IODImagePixelVariant::variant(t)
+ {
+
+ }
+
+ /** Destructor
+ */
+ ~IODImagePixelVariant()
+ {
+
+ }
+
+ /** Get name of module
+ * @return Name of the actual module (e.g. "ImagePixelModule")
+ */
+ OFString getName() const
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getName();
+ return OFString();
+ }
+
+ /** Get pixel data type
+ * @return The data type of the pixel data
+ */
+ IODImagePixelBase::DataType getDataType() const
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getDataType();
+ return IODImagePixelBase::DATA_TYPE_UNKNOWN;
+ }
+
+ /** Clear data (base class version)
+ */
+ void clearData()
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ pBase->clearData();
+ }
+
+ // -------------------------------------------------------------------------
+ // Getters for all attribute that appear in all Image Pixel Modules
+ // -------------------------------------------------------------------------
+
+ /** Get Samples per Pixel
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getSamplesPerPixel(Uint16 &value,
+ const signed long pos = 0)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getSamplesPerPixel(value, pos);
+ return IOD_EC_InvalidPixelData;
+ }
+
+ /** Get Photometric Interpretation
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPhotometricInterpretation(OFString&value,
+ const signed long pos = 0)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getPhotometricInterpretation(value, pos);
+ return IOD_EC_InvalidPixelData;
+ }
+
+ /** Get Rows
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getRows(Uint16& value,
+ const signed long pos = 0)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getRows(value, pos);
+ return IOD_EC_InvalidPixelData;
+ }
+
+ /** Get Columns
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getColumns(Uint16& value,
+ const signed long pos = 0)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getColumns(value, pos);
+ return IOD_EC_InvalidPixelData;
+ }
+
+ /** Get Bits Allocated
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getBitsAllocated(Uint16& value,
+ const signed long pos = 0)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getBitsAllocated(value, pos);
+ return IOD_EC_InvalidPixelData;
+ }
+
+ /** Get Pixel Aspect Ratio
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPixelAspectRatio(Uint16& value,
+ const signed long pos = 0)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->getPixelAspectRatio(value, pos);
+ return IOD_EC_InvalidPixelData;
+ }
+
+ // -------------------------------------------------------------------------
+ // Setters for all attribute that appear in all Image Pixel Modules and which
+ // do not have fixed values in sub classes.
+ // -------------------------------------------------------------------------
+
+ /** Set Rows
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value'. Not evaluated (here for consistency
+ * with other setter functions).
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setRows(const Uint16 value,
+ const OFBool checkValue = OFTrue)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->setRows(value, checkValue);
+ return IOD_EC_InvalidPixelData;
+
+ }
+
+ /** Set Columns
+ * @param value Reference to variable in which the value should be stored
+ * @param checkValue Check 'value'. Not evaluated (here for consistency
+ * with other setter functions).
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setColumns(const Uint16 value,
+ const OFBool checkValue = OFTrue)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->setColumns(value, checkValue);
+ return IOD_EC_InvalidPixelData;
+
+ }
+
+ /** Set Pixel Aspect Ratio
+ * @param verticalPixelSize The vertical pixel size (no unit)
+ * @param horizontalPixelSize The horizontal pixel size (no unit)
+ * @param checkValue Check 'value' for conformance with VR (IS)
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPixelAspectRatio(const OFString& verticalPixelSize,
+ const OFString& horizontalPixelSize,
+ const OFBool checkValue = OFTrue)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->setPixelAspectRatio(verticalPixelSize, horizontalPixelSize, checkValue);
+ return IOD_EC_InvalidPixelData;
+
+ }
+
+ /** Write pixel module base class data to given item
+ * @param dataset The item to write to (usually dataset level)
+ * @return EC_Normal if successful, error otherwise
+ */
+ OFCondition write(DcmItem& dataset)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->write(dataset);
+ return IOD_EC_InvalidPixelData;
+
+ }
+
+ /** Read pixel module base class data from given item
+ * @param dataset The item to read from (usually dataset level)
+ * @return EC_Normal if successful, error otherwise
+ */
+ OFCondition read(DcmItem& dataset)
+ {
+ if (IODImagePixelBase* pBase = OFvisit<IODImagePixelBase*>(IODImagePixelVariantBaseVisitor(), *this))
+ return pBase->read(dataset);
+ return IOD_EC_InvalidPixelData;
+ }
+
+};
+
+#endif // MODIMAGEPIXELBASE_H
/** Convenience method to add Dimension Index.
* @param dimensionIndexPointer The Dimension Index Pointer attribute
* @param dimensionOrganizationUID The Dimension Organization UID of the dimension organization
- * the pointer refers to
+ * the pointer refers to. If UID does not exist yet (in the Dimension
+ * Organization Sequence, it is created there automatically).
* @param functionalGroupPointer The functional group where the pointer attribute can be found
* @param dimensionDescriptionLabel The description label of this dimension (optional)
* @param dimensionIndexPrivateCreator The private creator of the Dimension Index Pointer
virtual OFCondition setNTPSourceAddress(const OFString &value,
const OFBool checkValue = OFTrue);
+protected:
+
+ /** Check whether given string is a valid value for attribute
+ * Acquisition Time Synchronized
+ * @param value The value to check
+ * @return OFTrue if value is valid for this attribute, OFFalse otherwise
+ */
+ virtual OFBool isValidAcquisitionTimeSynchronized(const OFString& value);
+
+ /** Check whether given string is a valid value for attribute
+ * Time Distribution Protocol
+ * @param value The value to check
+ * @return OFTrue if value is valid for this attribute, OFFalse otherwise
+ */
+ virtual OFBool isValidTimeDistributionProtocol(const OFString& value);
+
+ /** Check whether given string is a valid value for attribute
+ * Synchronization Trigger
+ * @param value The value to check
+ * @return OFTrue if value is valid for this attribute, OFFalse otherwise
+ */
+ virtual OFBool isValidSynchronizationTrigger(const OFString& value);
+
private:
/// Module name "SynchronizationModule"
# create library from source files
DCMTK_ADD_LIBRARY(dcmiod
cielabutil
+ iodcontentitemmacro
iodcommn
iodmacro
- iodimage
iodrules
iodreferences
iodutil
modenhusimage
modenhusseries
modequipment
+ modfloatingpointimagepixel
modfor
modgeneralimage
modgeneralseries
modgeneralstudy
modhelp
modimagepixel
+ modimagepixelbase
modmultiframefg
modmultiframedimension
modpatient
../include/dcmtk/dcmiod/iodreferences.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
-iodimage.o: iodimage.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmiod/iodimage.h ../include/dcmtk/dcmiod/iodcommn.h \
- ../include/dcmtk/dcmiod/iodrules.h \
+iodcontentitemmacro.o: iodcontentitemmacro.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
- ../../ofstd/include/dcmtk/ofstd/ofstream.h \
- ../../ofstd/include/dcmtk/ofstd/ofmap.h \
- ../../ofstd/include/dcmtk/ofstd/ofutil.h \
- ../../ofstd/include/dcmtk/ofstd/oftraits.h \
- ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
- ../../ofstd/include/dcmtk/ofstd/ofcond.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
- ../include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
../../oflog/include/dcmtk/oflog/oflog.h \
../../oflog/include/dcmtk/oflog/logger.h \
../../oflog/include/dcmtk/oflog/config.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/oflimits.h \
../../config/include/dcmtk/config/arith.h \
- ../include/dcmtk/dcmiod/ioddef.h ../include/dcmtk/dcmiod/cielabutil.h \
- ../include/dcmtk/dcmiod/modpatient.h \
- ../../ofstd/include/dcmtk/ofstd/ofmem.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
- ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../include/dcmtk/dcmiod/ioddef.h ../include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../include/dcmtk/dcmiod/iodtypes.h ../include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmiod/iodcontentitemmacro.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../include/dcmtk/dcmiod/modbase.h ../include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
- ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
- ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmiod/modbase.h \
- ../include/dcmtk/dcmiod/modpatientstudy.h \
- ../../ofstd/include/dcmtk/ofstd/ofoption.h \
- ../../ofstd/include/dcmtk/ofstd/ofalign.h \
- ../include/dcmtk/dcmiod/modgeneralstudy.h \
- ../include/dcmtk/dcmiod/iodmacro.h \
- ../include/dcmtk/dcmiod/modequipment.h \
- ../include/dcmtk/dcmiod/modgeneralseries.h \
- ../include/dcmtk/dcmiod/modfor.h ../include/dcmtk/dcmiod/modsopcommon.h \
- ../include/dcmtk/dcmiod/modcommoninstanceref.h \
- ../include/dcmtk/dcmiod/iodreferences.h \
- ../include/dcmtk/dcmiod/modgeneralimage.h \
- ../include/dcmtk/dcmiod/modimagepixel.h \
- ../include/dcmtk/dcmiod/iodutil.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
iodmacro.o: iodmacro.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/iodmacro.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../ofstd/include/dcmtk/ofstd/ofutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../include/dcmtk/dcmiod/ioddef.h ../include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../ofstd/include/dcmtk/ofstd/ofutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcuid.h
modacquisitioncontext.o: modacquisitioncontext.cc \
../../config/include/dcmtk/config/osconfig.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h
modcommoninstanceref.o: modcommoninstanceref.cc \
../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
modenhusimage.o: modenhusimage.cc \
../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/modenhusimage.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
+modfloatingpointimagepixel.o: modfloatingpointimagepixel.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmiod/modfloatingpointimagepixel.h \
+ ../include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../include/dcmtk/dcmiod/ioddef.h ../include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../include/dcmtk/dcmiod/iodtypes.h ../include/dcmtk/dcmiod/cielabutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
modfor.o: modfor.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/modfor.h ../include/dcmtk/dcmiod/modbase.h \
../../ofstd/include/dcmtk/ofstd/ofmem.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
modgeneralimage.o: modgeneralimage.cc \
../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/modgeneralimage.h \
modimagepixel.o: modimagepixel.cc \
../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/modimagepixel.h \
+ ../include/dcmtk/dcmiod/modimagepixelbase.h \
../include/dcmtk/dcmiod/modbase.h \
../../ofstd/include/dcmtk/ofstd/ofmem.h \
../../ofstd/include/dcmtk/ofstd/ofutil.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
+modimagepixelbase.o: modimagepixelbase.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../include/dcmtk/dcmiod/ioddef.h ../include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../include/dcmtk/dcmiod/iodtypes.h ../include/dcmtk/dcmiod/cielabutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
modmultiframedimension.o: modmultiframedimension.cc \
../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/modmultiframedimension.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
modmultiframefg.o: modmultiframefg.cc \
../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/modmultiframefg.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
modusfor.o: modusfor.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmiod/modusfor.h \
../../ofstd/include/dcmtk/ofstd/ofoption.h \
../include/dcmtk/dcmiod/iodutil.h \
../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h
LOCALDEFS =
-objs = cielabutil.o iodcommn.o iodmacro.o iodimage.o iodrules.o iodutil.o \
- iodtypes.o modacquisitioncontext.o modbase.o modcommoninstanceref.o \
+objs = cielabutil.o iodcommn.o iodcontentitemmacro.o iodmacro.o iodreferences.o iodrules.o \
+ iodtypes.o iodutil.o modacquisitioncontext.o modbase.o modcommoninstanceref.o \
modenhequipment.o modenhusimage.o modenhusseries.o modequipment.o \
- modfor.o modgeneralimage.o modgeneralseries.o modgeneralstudy.o \
- modhelp.o modimagepixel.o modmultiframefg.o \
- modmultiframedimension.o modpatient.o modpatientstudy.o \
- modsegmentationseries.o modsopcommon.o modsynchronization.o \
- modusfor.o
+ modfloatingpointimagepixel.o modfor.o modgeneralimage.o modgeneralseries.o \
+ modgeneralstudy.o modhelp.o modimagepixelbase.o modimagepixel.o modmultiframedimension.o \
+ modmultiframefg.o modpatient.o modpatientstudy.o modsegmentationseries.o modsopcommon.o \
+ modsynchronization.o modusfor.o
library = libdcmiod.$(LIBEXT)
/*
*
- * Copyright (C) 2015, Open Connections GmbH
+ * Copyright (C) 2015-2016, Open Connections GmbH
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation are maintained by
}
+DcmIODCommon::DcmIODCommon(const DcmIODCommon& rhs)
+: m_Item(rhs.m_Item),
+ m_Rules(rhs.m_Rules),
+ m_Patient(m_Item, m_Rules),
+ m_PatientStudy(m_Item, m_Rules),
+ m_Study(m_Item, m_Rules),
+ m_Equipment(m_Item, m_Rules),
+ m_Series(m_Item, m_Rules),
+ m_FrameOfReference(m_Item, m_Rules),
+ m_SOPCommon(m_Item, m_Rules),
+ m_CommonInstanceReferenceModule(m_Item, m_Rules),
+ m_Modules()
+{
+ // Set initial values for a new SOP instance
+ ensureInstanceUIDs(OFFalse);
+ m_Modules.push_back(&m_Patient);
+ m_Modules.push_back(&m_PatientStudy);
+ m_Modules.push_back(&m_Study);
+ m_Modules.push_back(&m_Equipment);
+ m_Modules.push_back(&m_Series);
+ m_Modules.push_back(&m_FrameOfReference);
+ m_Modules.push_back(&m_SOPCommon);
+ m_Modules.push_back(&m_CommonInstanceReferenceModule);
+}
+
+
DcmIODCommon::~DcmIODCommon()
{
}
void DcmIODCommon::clearData()
{
- OFVector<IODModule*>::iterator it = m_Modules.begin();
- while (it != m_Modules.end())
- {
- (*it)->clearData();
- it++;
- }
+ // TODO
+// OFVector<IODModule*>::iterator it = m_Modules.begin();
+// while (it != m_Modules.end())
+// {
+// (*it)->clearData();
+// it++;
+// }
}
}
+OFCondition DcmIODCommon::importPatientStudyFoR(const OFString& filename,
+ const OFBool usePatient,
+ const OFBool useStudy,
+ const OFBool useSeries,
+ const OFBool useFoR)
+{
+ DCMIOD_WARN("This function is deprecated and will be removed in later versions of DCMTK, please use import()");
+ return import(filename, usePatient, useStudy, useSeries, useFoR);
+}
+
+
+OFCondition DcmIODCommon::import(const OFString& filename,
+ const OFBool usePatient,
+ const OFBool useStudy,
+ const OFBool useSeries,
+ const OFBool useFoR)
+{
+ DcmFileFormat dcmff;
+ OFCondition result = dcmff.loadFile(filename.c_str());
+ if ( result.good() )
+ {
+ DcmDataset *dset = dcmff.getDataset();
+ if (dset != NULL)
+ {
+ result = import(*dset, usePatient, useStudy, useSeries, useFoR);
+ }
+ else
+ {
+ DCMIOD_ERROR("Unable to get dataset from file for copying patient, study, series and/or frame of reference information");
+ result = EC_IllegalCall;
+ }
+ }
+ return result;
+}
+
+
void DcmIODCommon::ensureInstanceUIDs(const OFBool correctInvalid)
{
m_Study.ensureInstanceUID(correctInvalid);
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Content Item Macro
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/ofstd/ofstream.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmdata/dcvrcs.h"
+#include "dcmtk/dcmdata/dcvrdt.h"
+#include "dcmtk/dcmdata/dcvrda.h"
+#include "dcmtk/dcmdata/dcvrtm.h"
+
+#include "dcmtk/dcmiod/iodutil.h"
+#include "dcmtk/dcmiod/iodcontentitemmacro.h"
+
+const OFString ContentItemMacro::ReferencedSOPSequenceItem::m_ComponentName = "ReferencedSOPSequenceItem";
+
+
+ContentItemMacro::ReferencedSOPSequenceItem::ReferencedSOPSequenceItem(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules,
+ IODComponent* parent)
+: IODComponent(item, rules, parent)
+{
+ // reset element rules
+ resetRules();
+}
+
+
+ContentItemMacro::ReferencedSOPSequenceItem::ReferencedSOPSequenceItem(IODComponent* parent)
+: IODComponent(parent)
+{
+ // reset element rules
+ resetRules();
+}
+
+
+ContentItemMacro::ReferencedSOPSequenceItem::ReferencedSOPSequenceItem(const ReferencedSOPSequenceItem& rhs)
+: IODComponent(rhs)
+{
+}
+
+
+ContentItemMacro::ReferencedSOPSequenceItem::~ReferencedSOPSequenceItem()
+{
+ // nothing to do
+}
+
+
+OFString ContentItemMacro::ReferencedSOPSequenceItem::getName() const
+{
+ return m_ComponentName;
+}
+
+
+void ContentItemMacro::ReferencedSOPSequenceItem::resetRules()
+{
+ // parameters are tag, VM, type. Overwrite old rules if any.
+ m_Rules->addRule(new IODRule(DCM_ReferencedFrameNumber, "1-n","1C", getName(), DcmIODTypes::IE_UNDEFINED), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ReferencedSegmentNumber, "1-n","1C", getName(), DcmIODTypes::IE_UNDEFINED), OFTrue);
+}
+
+
+OFCondition ContentItemMacro::ReferencedSOPSequenceItem::read(
+ DcmItem& source,
+ const OFBool clearOldData)
+{
+ if (clearOldData)
+ clearData();
+
+ IODComponent::read(source, OFFalse /* data already cleared */);
+ return EC_Normal;
+}
+
+
+OFCondition ContentItemMacro::ReferencedSOPSequenceItem::write(DcmItem& destination)
+{
+ OFCondition result = EC_Normal;
+
+ result = IODComponent::write(destination);
+
+ return result;
+}
+
+
+SOPInstanceReferenceMacro& ContentItemMacro::ReferencedSOPSequenceItem::getSOPInstanceReferenceMacro()
+{
+ return m_SOPInstanceReferenceMacro;
+}
+
+
+OFCondition ContentItemMacro::ReferencedSOPSequenceItem::getReferencedFrameNumber(
+ OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_ReferencedFrameNumber, *m_Item, value, pos);
+}
+
+
+OFCondition ContentItemMacro::ReferencedSOPSequenceItem::getReferencedSegmentNumber(
+ Uint16 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetUint16(DCM_ReferencedSegmentNumber, value, pos);
+}
+
+
+OFCondition ContentItemMacro::ReferencedSOPSequenceItem::setReferencedFrameNumber(
+ const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmIntegerString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_ReferencedFrameNumber, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::ReferencedSOPSequenceItem::setReferencedSegmentNumber(
+ const Uint16 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertUint16(DCM_ReferencedSegmentNumber, value);
+}
+
+
+const OFString ContentItemMacro::m_ModuleName = "ContentItemMacro";
+
+
+ContentItemMacro::ContentItemMacro()
+: IODComponent()
+{
+ resetRules();
+}
+
+
+ContentItemMacro::ContentItemMacro(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules)
+: IODComponent(item, rules)
+{
+ // reset element rules
+ resetRules();
+}
+
+
+ContentItemMacro::ContentItemMacro(const ContentItemMacro& rhs)
+: IODComponent(rhs)
+{
+ if (this == &rhs)
+ return;
+
+ OFVector<CodeSequenceMacro*>::const_iterator it = rhs.m_ConceptCodeSequence.begin();
+ while (it != rhs.m_ConceptCodeSequence.end())
+ {
+ CodeSequenceMacro* macro = new CodeSequenceMacro(**it);
+ m_ConceptCodeSequence.push_back(macro);
+ it++;
+ }
+
+ it = rhs.m_ConceptNameCodeSequence.begin();
+ while (it != rhs.m_ConceptNameCodeSequence.end())
+ {
+ CodeSequenceMacro* macro = new CodeSequenceMacro(**it);
+ m_ConceptNameCodeSequence.push_back(macro);
+ it++;
+ }
+
+ it = rhs.m_MeasurementUnitsCodeSequence.begin();
+ while (it != rhs.m_MeasurementUnitsCodeSequence.end())
+ {
+ CodeSequenceMacro* macro = new CodeSequenceMacro(**it);
+ m_MeasurementUnitsCodeSequence.push_back(macro);
+ it++;
+ }
+
+ OFVector<ReferencedSOPSequenceItem*>::const_iterator m = rhs.m_ReferencedSOPSequence.begin();
+ while (m != rhs.m_ReferencedSOPSequence.end())
+ {
+ ReferencedSOPSequenceItem* item = new ReferencedSOPSequenceItem(**m);
+ m_ReferencedSOPSequence.push_back(item);
+ m++;
+ }
+
+}
+
+
+ContentItemMacro::~ContentItemMacro()
+{
+ DcmIODUtil::freeContainer(m_ConceptNameCodeSequence);
+ DcmIODUtil::freeContainer(m_ConceptCodeSequence);
+ DcmIODUtil::freeContainer(m_MeasurementUnitsCodeSequence);
+ DcmIODUtil::freeContainer(m_ReferencedSOPSequence);
+}
+
+
+OFString ContentItemMacro::getName() const
+{
+ return m_ModuleName;
+}
+
+
+void ContentItemMacro::resetRules()
+{
+ // parameters are tag, VM, type. Overwrite old rules if any.
+ m_Rules->addRule(new IODRule(DCM_ValueType, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ConceptNameCodeSequence, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_DateTime, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Date, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Time, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_PersonName, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_UID, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_TextValue, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ConceptCodeSequence, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_NumericValue, "1-n","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_FloatingPointValue, "1-n","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_RationalNumeratorValue, "1-n","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_RationalDenominatorValue, "1-n","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_MeasurementUnitsCodeSequence, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ReferencedSOPSequence, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+}
+
+
+OFCondition ContentItemMacro::read(DcmItem& source,
+ const OFBool clearOldData)
+{
+ if (clearOldData)
+ clearData();
+
+ IODComponent::read(source, OFFalse /* data already cleared */);
+ DcmIODUtil::readSubSequence(source, DCM_ConceptNameCodeSequence, m_ConceptNameCodeSequence, m_Rules->getByTag(DCM_ConceptNameCodeSequence));
+ DcmIODUtil::readSubSequence(source, DCM_ConceptCodeSequence, m_ConceptCodeSequence, m_Rules->getByTag(DCM_ConceptCodeSequence));
+ DcmIODUtil::readSubSequence(source, DCM_MeasurementUnitsCodeSequence, m_MeasurementUnitsCodeSequence, m_Rules->getByTag(DCM_MeasurementUnitsCodeSequence));
+ DcmIODUtil::readSubSequence(source, DCM_ReferencedSOPSequence, m_ReferencedSOPSequence, m_Rules->getByTag(DCM_ReferencedSOPSequence));
+
+ return EC_Normal;
+}
+
+
+OFCondition ContentItemMacro::write(DcmItem& destination)
+{
+ OFCondition result = EC_Normal;
+
+ if(CodeSequenceMacro* pConceptNameCodeSequence = getConceptNameCodeSequence())
+ DcmIODUtil::writeSingleItem(result, DCM_ConceptNameCodeSequence, *pConceptNameCodeSequence, *m_Item, m_Rules->getByTag(DCM_ConceptNameCodeSequence));
+ if(CodeSequenceMacro* pConceptCodeSequence = getConceptCodeSequence())
+ DcmIODUtil::writeSingleItem(result, DCM_ConceptCodeSequence, *pConceptCodeSequence, *m_Item, m_Rules->getByTag(DCM_ConceptCodeSequence));
+ if(CodeSequenceMacro* pMeasurementUnitsCodeSequence = getMeasurementUnitsCodeSequence())
+ DcmIODUtil::writeSingleItem(result, DCM_MeasurementUnitsCodeSequence, *pMeasurementUnitsCodeSequence, *m_Item, m_Rules->getByTag(DCM_MeasurementUnitsCodeSequence));
+ if(ReferencedSOPSequenceItem* pReferencedSOPSequence = getReferencedSOPSequence())
+ DcmIODUtil::writeSingleItem(result, DCM_ReferencedSOPSequence, *pReferencedSOPSequence, *m_Item, m_Rules->getByTag(DCM_ReferencedSOPSequence));
+
+ if (result.good())
+ {
+ result = IODComponent::write(destination);
+ }
+
+ return result;
+}
+
+
+OFCondition ContentItemMacro::getValueType(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_ValueType, *m_Item, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getValueType(ValueType& value) const
+{
+ OFString str;
+ OFCondition result = DcmIODUtil::getStringValueFromItem(DCM_ValueType, *m_Item, str, 0);
+ if (result == EC_Normal)
+ {
+ if (!str.empty())
+ {
+ if (str == "DATE")
+ value = VT_DATE;
+ else if (str == "TIME")
+ value = VT_TIME;
+ else if (str == "DATETIME")
+ value = VT_DATETIME;
+ else if (str == "PNAME")
+ value = VT_PNAME;
+ else if (str == "UIDREF")
+ value = VT_UIDREF;
+ else if (str == "TEXT")
+ value = VT_TEXT;
+ else if (str == "CODE")
+ value = VT_CODE;
+ else if (str == "NUMERIC")
+ value = VT_NUMERIC;
+ else if (str == "COMPOSITE")
+ value = VT_COMPOSITE;
+ else if (str == "IMAGE")
+ value = VT_IMAGE;
+ else
+ value = VT_UNKNOWN;
+ }
+ else
+ {
+ value = VT_EMPTY;
+ }
+ }
+ else if (result == EC_TagNotFound)
+ {
+ value = VT_EMPTY;
+ }
+ else
+ {
+ DCMIOD_ERROR("Unexpected error, could not get Value Type: " << result.text());
+ value = VT_UNKNOWN;
+ }
+ return result;
+}
+
+
+CodeSequenceMacro* ContentItemMacro::getConceptNameCodeSequence()
+{
+ return m_ConceptNameCodeSequence.empty() ? OFnullptr : *m_ConceptNameCodeSequence.begin();
+}
+
+OFVector<CodeSequenceMacro*>& ContentItemMacro::getEntireConceptNameCodeSequence()
+{
+ return m_ConceptNameCodeSequence;
+}
+
+
+OFCondition ContentItemMacro::getDateTime(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_DateTime, *m_Item, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getDate(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_Date, *m_Item, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getTime(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_Time, *m_Item, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getPersonName(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_PersonName, *m_Item, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getUID(OFString &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetOFString(DCM_UID, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getTextValue(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_TextValue, *m_Item, value, pos);
+}
+
+
+CodeSequenceMacro* ContentItemMacro::getConceptCodeSequence()
+{
+ return m_ConceptCodeSequence.empty() ? OFnullptr : *m_ConceptCodeSequence.begin();
+}
+
+OFVector<CodeSequenceMacro*>& ContentItemMacro::getEntireConceptCodeSequence()
+{
+ return m_ConceptCodeSequence;
+}
+
+
+OFCondition ContentItemMacro::getNumericValue(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_NumericValue, *m_Item, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getFloatingPointValue(Float64 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetFloat64(DCM_FloatingPointValue, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getRationalNumeratorValue(Sint32 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetSint32(DCM_RationalNumeratorValue, value, pos);
+}
+
+
+OFCondition ContentItemMacro::getRationalDenominatorValue(Uint32 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetUint32(DCM_RationalDenominatorValue, value, pos);
+}
+
+
+CodeSequenceMacro* ContentItemMacro::getMeasurementUnitsCodeSequence()
+{
+ return m_MeasurementUnitsCodeSequence.empty() ? OFnullptr : *m_MeasurementUnitsCodeSequence.begin();
+}
+
+OFVector<CodeSequenceMacro*>& ContentItemMacro::getEntireMeasurementUnitsCodeSequence()
+{
+ return m_MeasurementUnitsCodeSequence;
+}
+
+
+ContentItemMacro::ReferencedSOPSequenceItem* ContentItemMacro::getReferencedSOPSequence()
+{
+ return m_ReferencedSOPSequence.empty() ? OFnullptr : *m_ReferencedSOPSequence.begin();
+}
+
+OFVector<ContentItemMacro::ReferencedSOPSequenceItem*>& ContentItemMacro::getEntireReferencedSOPSequence()
+{
+ return m_ReferencedSOPSequence;
+}
+
+
+OFCondition ContentItemMacro::setValueType(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::setValueType(const ContentItemMacro::ValueType value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ OFCondition result;
+ switch (value)
+ {
+ case VT_DATE:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "DATE");
+ break;
+ }
+ case VT_TIME:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "TIME");
+ break;
+ }
+ case VT_DATETIME:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "DATETIME");
+ break;
+ }
+ case VT_PNAME:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "PNAME");
+ break;
+ }
+ case VT_UIDREF:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "UIDREF");
+ break;
+ }
+ case VT_TEXT:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "TEXT");
+ break;
+ }
+ case VT_CODE:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "CODE");
+ break;
+ }
+ case VT_NUMERIC:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "NUMERIC");
+ break;
+ }
+ case VT_COMPOSITE:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "COMPOSITE");
+ break;
+ }
+ case VT_IMAGE:
+ {
+ result = m_Item->putAndInsertOFStringArray(DCM_ValueType, "IMAGE");
+ break;
+ }
+ default:
+ {
+ result = IOD_EC_InvalidElementValue;
+ }
+ }
+ return result;
+}
+
+
+
+OFCondition ContentItemMacro::setDateTime(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_DateTime, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::setDate(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_Date, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::setTime(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_Time, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::setPersonName(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmPersonName::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_PersonName, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::setUID(const OFString &value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertOFStringArray(DCM_UID, value);
+}
+
+
+OFCondition ContentItemMacro::setTextValue(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_TextValue, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::setNumericValue(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmDecimalString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_NumericValue, value);
+ return result;
+}
+
+
+OFCondition ContentItemMacro::setFloatingPointValue(const Float64 value,
+ const unsigned long pos,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertFloat64(DCM_FloatingPointValue, value, pos);
+}
+
+
+OFCondition ContentItemMacro::setRationalNumeratorValue(const Sint32 value,
+ const unsigned long pos,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertSint32(DCM_RationalNumeratorValue, value, pos);
+}
+
+
+OFCondition ContentItemMacro::setRationalDenominatorValue(const Uint32 value,
+ const unsigned long pos,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertUint32(DCM_RationalDenominatorValue, value, pos);
+}
+
+
+OFString ContentItemMacro::toString()
+{
+ ValueType vt;
+ getValueType(vt);
+ OFStringStream oss;
+ if (getConceptNameCodeSequence())
+ {
+ oss << getConceptNameCodeSequence()->toString() << ": ";
+ }
+ else
+ {
+ oss << "<no name>: ";
+ }
+ switch (vt)
+ {
+ case VT_CODE:
+ oss << "CODE: " << getConceptCodeSequence()->toString();
+ break;
+ case VT_COMPOSITE:
+ {
+ OFString sopClass, sopInstance, frameNumber;
+ if (getReferencedSOPSequence())
+ {
+ getReferencedSOPSequence()->getSOPInstanceReferenceMacro().getReferencedSOPClassUID(sopClass);
+ getReferencedSOPSequence()->getSOPInstanceReferenceMacro().getReferencedSOPClassUID(sopInstance);
+ getReferencedSOPSequence()->getReferencedFrameNumber(frameNumber);
+ oss << "COMPOSITE: " << sopClass << " / " << sopInstance;
+ if (!frameNumber.empty())
+ {
+ oss << " / Frames: " << frameNumber;
+ }
+ Uint16 val,pos;
+ val = pos = 0;
+ if (getReferencedSOPSequence()->getReferencedSegmentNumber(val, pos).good())
+ {
+ oss << " / Segments: ";
+ while (getReferencedSOPSequence()->getReferencedSegmentNumber(val, pos).good())
+ {
+ oss << val << " ";
+ pos++;
+ }
+ }
+ }
+ else
+ {
+ oss << "COMPOSITE: <None>";
+ }
+ break;
+ }
+ case VT_DATE:
+ {
+ OFString date;
+ getDate(date);
+ oss << "DATE: " << date;
+ break;
+ }
+ case VT_DATETIME:
+ {
+ OFString datetime;
+ getDateTime(datetime);
+ oss << "DATETIME: " << datetime;
+ break;
+ }
+ case VT_IMAGE:
+ {
+ OFString sopClass, sopInstance, frameNumber;
+ if (getReferencedSOPSequence())
+ {
+ getReferencedSOPSequence()->getSOPInstanceReferenceMacro().getReferencedSOPClassUID(sopClass);
+ getReferencedSOPSequence()->getSOPInstanceReferenceMacro().getReferencedSOPClassUID(sopInstance);
+ getReferencedSOPSequence()->getReferencedFrameNumber(frameNumber);
+ oss << "IMAGE: " << sopClass << " / " << sopInstance;
+ if (!frameNumber.empty())
+ {
+ oss << " / Frames: " << frameNumber;
+ }
+ }
+ else
+ {
+ oss << "IMAGE: <None>";
+ }
+ break;
+ }
+ case VT_NUMERIC:
+ {
+ OFString val;
+ getNumericValue(val);
+ oss << "NUMERIC: " << val;
+ if (getMeasurementUnitsCodeSequence())
+ {
+ oss << ", Units: " << getMeasurementUnitsCodeSequence()->toString() << ")";
+ }
+ Uint16 pos =0;
+ Float64 fl64 = 0;
+ if (getFloatingPointValue(fl64, pos).good())
+ {
+ oss << ", Float value(s): " ;
+ do
+ {
+ oss << val << " ";
+ pos++;
+ } while (getFloatingPointValue(fl64, pos).good());
+ }
+ else
+ {
+ oss << ", Float value(s): <none>";
+ }
+ pos = 0;
+ Sint32 si32 = 0;
+ if (getRationalNumeratorValue(si32, pos).good())
+ {
+ oss << ", Numerator value(s): " ;
+ do
+ {
+ oss << val << " ";
+ pos++;
+ } while (getRationalNumeratorValue(si32, pos).good());
+ }
+ pos = 0;
+ Uint32 ui32 = 0;
+ if (getRationalDenominatorValue(ui32, pos).good())
+ {
+ oss << ", Denominator value(s): " ;
+ do
+ {
+ oss << val << " ";
+ pos++;
+ } while (getRationalDenominatorValue(ui32, pos).good());
+ }
+
+ break;
+ }
+ case VT_PNAME:
+ {
+ OFString val;
+ getPersonName(val);
+ oss << "PNAME: " << val;
+ break;
+ }
+ case VT_TEXT:
+ {
+ OFString val;
+ getTextValue(val);
+ oss << "TEXT: " << val;
+ break;
+ }
+ case VT_TIME:
+ {
+ OFString val;
+ getTime(val);
+ oss << "TIME: " << val;
+ break;
+ }
+ case VT_UIDREF:
+ {
+ OFString val;
+ getUID(val);
+ oss << "UIDREF: " << val;
+ break;
+ }
+ case VT_EMPTY:
+ {
+ oss << "<None>";
+ break;
+ }
+ case VT_UNKNOWN:
+ {
+ OFString val;
+ getValueType(val);
+ oss << "<Unknown: " << val << ">";
+ break;
+ }
+ default:
+ {
+ oss << "<Internal error>";
+ }
+ }
+ OFSTRINGSTREAM_GETOFSTRING(oss, val);
+ return val;
+}
+
+++ /dev/null
-/*
- *
- * Copyright (C) 2015, Open Connections GmbH
- * All rights reserved. See COPYRIGHT file for details.
- *
- * This software and supporting documentation are maintained by
- *
- * OFFIS e.V.
- * R&D Division Health
- * Escherweg 2
- * D-26121 Oldenburg, Germany
- *
- *
- * Module: dcmiod
- *
- * Author: Michael Onken
- *
- * Purpose: Class repres. image IOD by exposing common image IOD attributes
- *
- */
-
-#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
-#include "dcmtk/dcmiod/iodimage.h"
-#include "dcmtk/dcmiod/iodutil.h"
-
-DcmIODImage::DcmIODImage()
-: m_GeneralImage(getData(), getRules()),
- m_ImagePixel(getData(), getRules())
-{
- // Nothing to do
-}
-
-
-IODGeneralImageModule& DcmIODImage::getGeneralImage()
-{
- return m_GeneralImage;
-}
-
-
-IODImagePixelModule& DcmIODImage::getImagePixel()
-{
- return m_ImagePixel;
-}
-
-
-DcmIODImage::~DcmIODImage()
-{
- // IOD rules created in DcmIODImage are cleared in DcmIODCommon::~DcmIODCommon()
-}
-
-
-void DcmIODImage::clearData()
-{
- // clear all attributes from base classes
- DcmIODCommon::clearData();
- m_GeneralImage.clearData();
- m_ImagePixel.clearData();
-}
-
-
-OFCondition DcmIODImage::read(DcmItem &dataset)
-{
- // re-initialize object
- DcmIODImage::clearData();
-
- // read from base classes
- DcmIODCommon::read(dataset);
- m_GeneralImage.read(dataset, OFTrue /* clear old data */);
- m_ImagePixel.read(dataset, OFTrue /* clear old data */);
-
- return EC_Normal;
-}
-
-
-OFCondition DcmIODImage::write(DcmItem &dataset)
-{
- OFCondition result = EC_Normal;
-
- // Write base class attributes to dataset
- result = DcmIODCommon::write(dataset);
-
- // Write extra modules to dataset
- if (result.good())
- result = m_GeneralImage.write(dataset);
- if (result.good())
- result = m_ImagePixel.write(dataset);
-
- return result;
-}
#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
#include "dcmtk/dcmiod/iodmacro.h"
#include "dcmtk/dcmiod/iodutil.h" // for static IOD helpers
+#include "dcmtk/ofstd/ofstream.h"
// --------------------------- Code Sequence Macro ---------------------------
}
+OFBool CodeSequenceMacro::empty()
+{
+ OFString val;
+ getCodeValue(val);
+ if (val.empty())
+ {
+ getCodingSchemeDesignator(val);
+ if (val.empty())
+ {
+ getCodingSchemeVersion(val);
+ if (val.empty())
+ {
+ getCodingSchemeDesignator(val);
+ if (val.empty())
+ {
+ return OFTrue;
+ }
+ }
+ }
+ }
+ return OFFalse;
+}
+
+
// -- set dicom attributes --
OFCondition CodeSequenceMacro::setCodeValue(const OFString &value,
return result;
}
+
// ---------------------- CodeWithModifiers----------------------
CodeWithModifiers::CodeWithModifiers(const OFString& modifierType,
}
if (result.bad())
{
- DCMIOD_ERROR("Invalid code in Code Sequence Macro or its modifiers");
+ if (!quiet)
+ {
+ DCMIOD_ERROR("Invalid code in Code Sequence Macro or its modifiers");
+ }
}
return result;
}
}
+OFString CodeSequenceMacro::toString()
+{
+ OFString d,m,v;
+ getCodeValue(v);
+ getCodeMeaning(m);
+ getCodingSchemeDesignator(d);
+ OFStringStream oss;
+ oss << "(" << d << "," << v << "," << m << ")";
+ OFSTRINGSTREAM_GETOFSTRING(oss, msg);
+ return msg;
+
+}
+
+
// ---------------------- SeriesAndInstanceReferenceMacro----------------------
const OFString IODSeriesAndInstanceReferenceMacro::m_ComponentName = "SeriesAndInstanceReferenceMacro";
OFCondition ImageSOPInstanceReferenceMacro::create(const OFString& sopClassUID,
const OFString& sopInstanceUID,
const OFVector< Uint16 >& refFramesOrSegments,
- ImageSOPInstanceReferenceMacro*& result
- )
+ ImageSOPInstanceReferenceMacro*& result)
{
OFCondition cond = create(sopClassUID, sopInstanceUID, result);
if (cond.good())
m_Type(type),
m_AnatomicRegion(),
m_AnatomicRegionModifier(),
- m_PrimaryAnatomicStructure()
+ m_PrimaryAnatomicStructure("3" /* Modifier in Primary Anatomic Structure is always optional */, "1", DCM_PrimaryAnatomicStructureModifierSequence)
{
m_Type = type;
}
: m_Type(rhs.m_Type),
m_AnatomicRegion(),
m_AnatomicRegionModifier(),
- m_PrimaryAnatomicStructure()
+ m_PrimaryAnatomicStructure("3" /* Modifier in Primary Anatomic Structure is always optional */, "1", DCM_PrimaryAnatomicStructureModifierSequence)
+{
+ *this = rhs;
+}
+
+
+GeneralAnatomyMacro& GeneralAnatomyMacro::operator=(const GeneralAnatomyMacro& rhs)
{
if (this != &rhs)
{
+ clearData();
m_Type = rhs.m_Type;
- m_AnatomicRegion = m_AnatomicRegion;
+ m_AnatomicRegion = rhs.m_AnatomicRegion;
m_PrimaryAnatomicStructure = rhs.m_PrimaryAnatomicStructure;
OFVector<CodeSequenceMacro*>::const_iterator it = rhs.m_AnatomicRegionModifier.begin();
it++;
}
}
+ return *this;
}
if (result.bad()) return result;
it++;
}
- result = m_PrimaryAnatomicStructure.check(quiet);
+ // Primary Anatomic Structure is optional (type 3), so only check if
+ // user intended to fill in something.
+ if (!m_PrimaryAnatomicStructure.empty())
+ {
+ result = m_PrimaryAnatomicStructure.check(quiet);
+ }
return result;
}
/* read Anatomic Region Sequence item into Code Sequence Macro */
DcmIODUtil::readSingleItem<CodeSequenceMacro>(source, DCM_AnatomicRegionSequence, m_AnatomicRegion, m_Type, "GeneralAnatomyMacro");
- /* Get the single item from Anatomic Region Sequence */
+ /* read Primary Anatomic Structure Macro (main level, i.e.\ original item) */
+ DcmIODUtil::readSingleItem(source, DCM_PrimaryAnatomicStructureSequence, m_PrimaryAnatomicStructure, "3", "GeneralAnatomyMacro");
+
+ /* Get the single item from Anatomic Region Sequence and read modifier if found */
DcmItem* localItem = NULL;
if ( source.findAndGetSequenceItem(DCM_AnatomicRegionSequence, localItem).bad() )
{
"3",
"GeneralAnatomyMacro" );
- /* read Primary Anatomic Structure Macro (main level, i.e.\ original item) */
- m_PrimaryAnatomicStructure.read(source);
-
return result;
}
/* delete old data */
item.findAndDeleteElement(DCM_AnatomicRegionSequence);
+ item.findAndDeleteElement(DCM_PrimaryAnatomicStructureSequence);
/* Write sub structures */
DcmIODUtil::writeSingleItem<CodeSequenceMacro>(result, DCM_AnatomicRegionSequence, m_AnatomicRegion, item, m_Type, "GeneralAnatomyMacro");
- DcmIODUtil::writeSubSequence<OFVector<CodeSequenceMacro*> >
- ( result,
- DCM_AnatomicRegionModifierSequence,
- m_AnatomicRegionModifier,
- item,
- "1-n",
- "3",
- "GeneralAnatomyMacro");
- return result;
-}
-
-
-GeneralAnatomyMacro& GeneralAnatomyMacro::operator=(const GeneralAnatomyMacro& rhs)
-{
- if (this != &rhs)
+ if (result.good())
{
- clearData();
- m_Type = rhs.m_Type;
- m_AnatomicRegion = rhs.m_AnatomicRegion;
- m_PrimaryAnatomicStructure = rhs.m_PrimaryAnatomicStructure;
-
- OFVector<CodeSequenceMacro*>::const_iterator it = rhs.m_AnatomicRegionModifier.begin();
- while ( it != rhs.m_AnatomicRegionModifier.end() )
+ DcmItem* seqItem = NULL;
+ result = item.findAndGetSequenceItem(DCM_AnatomicRegionSequence, seqItem, 0);
+ if (result.good())
{
- m_AnatomicRegionModifier.push_back( new CodeSequenceMacro(**it) );
- it++;
+ DcmIODUtil::writeSubSequence<OFVector<CodeSequenceMacro*> >
+ ( result,
+ DCM_AnatomicRegionModifierSequence,
+ m_AnatomicRegionModifier,
+ *seqItem,
+ "1-n",
+ "3",
+ "GeneralAnatomyMacro");
}
}
- return *this;
-}
-
-
-// ---------------------- PrimaryAnatomicStructureMacroItem ------------------
-
-PrimaryAnatomicStructureMacroItem::PrimaryAnatomicStructureMacroItem() :
- m_AnatomicStructure(),
- m_AnatomicStructureModifier()
-{
+ DcmIODUtil::writeSingleItem(result, DCM_PrimaryAnatomicStructureSequence, m_PrimaryAnatomicStructure, item, "3", "GeneralAnatomyMacro");
+ return result;
}
-PrimaryAnatomicStructureMacroItem::PrimaryAnatomicStructureMacroItem(const PrimaryAnatomicStructureMacroItem& rhs) :
- m_AnatomicStructure(),
- m_AnatomicStructureModifier()
+int GeneralAnatomyMacro::compare(const GeneralAnatomyMacro& rhs) const
{
- if (this != &rhs)
+ int result = m_AnatomicRegion.compare(rhs.m_AnatomicRegion);
+ if (result == 0)
{
- m_AnatomicStructure = rhs.m_AnatomicStructure;
- OFVector<CodeSequenceMacro*>::const_iterator it = rhs.m_AnatomicStructureModifier.begin();
- while ( it != rhs.m_AnatomicStructureModifier.begin() )
+ if (m_AnatomicRegionModifier.size() > rhs.m_AnatomicRegionModifier.size())
{
- m_AnatomicStructureModifier.push_back(new CodeSequenceMacro(**it));
- it++;
+ return 1;
}
- }
-}
-
-
-PrimaryAnatomicStructureMacroItem& PrimaryAnatomicStructureMacroItem::operator=(const PrimaryAnatomicStructureMacroItem& rhs)
-{
- if (this != &rhs)
- {
- clearData();
- m_AnatomicStructure = rhs.m_AnatomicStructure;
- OFVector<CodeSequenceMacro*>::const_iterator it = rhs.m_AnatomicStructureModifier.begin();
- while ( it != rhs.m_AnatomicStructureModifier.begin() )
+ else if (m_AnatomicRegionModifier.size() < rhs.m_AnatomicRegionModifier.size())
{
- m_AnatomicStructureModifier.push_back(new CodeSequenceMacro(**it));
- it++;
+ return -1;
}
- }
- return *this;
-}
-
-
-PrimaryAnatomicStructureMacroItem::~PrimaryAnatomicStructureMacroItem()
-{
- clearData();
-}
-
-
-void PrimaryAnatomicStructureMacroItem::clearData()
-{
- m_AnatomicStructure.clearData();
- m_AnatomicStructureModifier.clear();
- DcmIODUtil::freeContainer(m_AnatomicStructureModifier);
-}
-
-
-OFCondition PrimaryAnatomicStructureMacroItem::check(const OFBool quiet)
-{
- OFCondition result = m_AnatomicStructure.check();
- if (result.bad()) return result;
-
- OFVector<CodeSequenceMacro*>::iterator it = m_AnatomicStructureModifier.begin();
- while (it != m_AnatomicStructureModifier.end())
- {
- result = (*it)->check(quiet);
- if (result.bad())
- return result;
- it++;
- }
- return result;
-}
-
-
-
-CodeSequenceMacro& PrimaryAnatomicStructureMacroItem::getAnatomicStructure()
-{
- return m_AnatomicStructure;
-}
-
-
-OFVector<CodeSequenceMacro*>& PrimaryAnatomicStructureMacroItem::getAnatomicStructureModifier()
-{
- return m_AnatomicStructureModifier;
-}
-
-OFCondition PrimaryAnatomicStructureMacroItem::read(DcmItem& source,
- const OFBool clearOldData)
-{
- OFCondition result = EC_Normal;
-
- /* re-initialize object */
- if (clearOldData)
- clearData();
-
- m_AnatomicStructure.read(source);
-
- /* check whether cardinality of Primary Anatomic Structure Modifier Sequence and type is ok (produces warnings if not) */
- DcmIODUtil::checkSubSequence(result, source, DCM_PrimaryAnatomicStructureModifierSequence, "1-n", "3", "PrimaryAnatomicStructureMacro");
-
- /* read Primary Anatomic Structure Modifier Sequence */
- DcmIODUtil::readSubSequence<OFVector<CodeSequenceMacro*> >
- ( source, /* item of Primary Anatomic Structure Sequence */
- DCM_PrimaryAnatomicStructureModifierSequence,
- m_AnatomicStructureModifier,
- "1-n",
- "3",
- "GeneralAnatomyMacro" );
-
- return result;
-}
-
-
-/// Write Primary Anatomic Structure Sequence Item to given item
-OFCondition PrimaryAnatomicStructureMacroItem::write(DcmItem& source)
-{
- OFCondition result;
- m_AnatomicStructure.write(source);
- DcmIODUtil::writeSubSequence<OFVector<CodeSequenceMacro*> >
- (
- result,
- DCM_PrimaryAnatomicStructureModifierSequence,
- m_AnatomicStructureModifier,
- source,
- "1-n",
- "3",
- "PrimaryAnatomicStructureMacro"
- );
- return result;
-}
-
-
-// ---------------------- PrimaryAnatomicStructureMacro ----------------------
-
-
-PrimaryAnatomicStructureMacro::PrimaryAnatomicStructureMacro() :
- m_PrimaryAnatomicStructure()
-{
-
-}
-
-
-PrimaryAnatomicStructureMacro::PrimaryAnatomicStructureMacro(const PrimaryAnatomicStructureMacro& rhs)
-{
- if (this != &rhs)
- {
- OFVector<PrimaryAnatomicStructureMacroItem*>::const_iterator it = rhs.m_PrimaryAnatomicStructure.begin();
- while ( it != rhs.m_PrimaryAnatomicStructure.begin() )
+ for (size_t m = 0; m < m_AnatomicRegionModifier.size(); m++)
{
- m_PrimaryAnatomicStructure.push_back(new PrimaryAnatomicStructureMacroItem(**it));
- it++;
+ rhs.m_AnatomicRegionModifier[m];
+ result = m_AnatomicRegionModifier[m]->compare( *(rhs.m_AnatomicRegionModifier[m]) );
+ if (result != 0)
+ {
+ return result;
+ }
}
+ result = m_PrimaryAnatomicStructure.compare(rhs.m_PrimaryAnatomicStructure);
}
-}
-
-
-PrimaryAnatomicStructureMacro::~PrimaryAnatomicStructureMacro()
-{
- clearData();
-}
-
-
-void PrimaryAnatomicStructureMacro::clearData()
-{
- m_PrimaryAnatomicStructure.clear();
-}
-
-
-OFCondition PrimaryAnatomicStructureMacro::check(const OFBool quiet)
-{
- OFCondition result;
- OFVector<PrimaryAnatomicStructureMacroItem*>::iterator it = m_PrimaryAnatomicStructure.begin();
- while (it != m_PrimaryAnatomicStructure.end())
- {
- result = (*it)->check(quiet);
- if (result.bad()) return result;
- it++;
- }
- return result;
-}
-
-
-OFVector<PrimaryAnatomicStructureMacroItem*>& PrimaryAnatomicStructureMacro::getPrimaryAnatomicStructure()
-{
- return m_PrimaryAnatomicStructure;
-}
-
-
-/// Reads Primary Anatomic Region Sequence from given item
-OFCondition PrimaryAnatomicStructureMacro::read(DcmItem& source,
- const OFBool clearOldData)
-{
- OFCondition result;
-
- if (clearOldData)
- clearData();
-
- // check for sequence and report warnings if not ok */
- DcmIODUtil::checkSubSequence(result, source, DCM_PrimaryAnatomicStructureSequence, "1-n", "3", "PrimaryAnantomicStructureMacro");
-
- // read sequence into member
- DcmIODUtil::readSubSequence<OFVector<PrimaryAnatomicStructureMacroItem*> >
- ( source,
- DCM_PrimaryAnatomicStructureSequence,
- m_PrimaryAnatomicStructure,
- "1-n",
- "3",
- "PrimaryAnatomicStructureMacro"
- );
- return result;
-}
-
-
-/// Write Anatomic Region Sequence from given item
-OFCondition PrimaryAnatomicStructureMacro::write(DcmItem& item)
-{
- OFCondition result = EC_Normal;
-
- /* delete old data */
- item.findAndDeleteElement(DCM_PrimaryAnatomicStructureSequence);
- item.insertEmptyElement(DCM_PrimaryAnatomicStructureSequence);
-
- DcmIODUtil::writeSubSequence<OFVector<PrimaryAnatomicStructureMacroItem*> >
- (
- result,
- DCM_PrimaryAnatomicStructureSequence,
- m_PrimaryAnatomicStructure,
- item,
- "1-n",
- "3",
- "PrimaryAnatomicStructureMacro"
- );
-
return result;
}
-PrimaryAnatomicStructureMacro& PrimaryAnatomicStructureMacro::operator=(const PrimaryAnatomicStructureMacro& rhs)
-{
- if (this != &rhs)
- {
- clearData();
- OFVector<PrimaryAnatomicStructureMacroItem*>::const_iterator it = rhs.m_PrimaryAnatomicStructure.begin();
- while ( it != rhs.m_PrimaryAnatomicStructure.begin() )
- {
- m_PrimaryAnatomicStructure.push_back(new PrimaryAnatomicStructureMacroItem(**it));
- it++;
- }
- }
- return *this;
-}
-
-
// ---------------------- AlgorithmIdentificationMacro ----------------------
#include "dcmtk/dcmdata/dcdeftag.h"
+IODComponent::IODComponent(const IODComponent& rhs)
+: m_Item(OFstatic_cast(DcmItem*, rhs.m_Item->clone()))
+, m_Rules(rhs.m_Rules->clone())
+, m_Parent(OFnullptr)
+{
+
+}
+
+
IODComponent::IODComponent(OFshared_ptr<DcmItem> item,
OFshared_ptr<IODRules> rules,
IODComponent* parent)
{
if (&rhs != this)
{
- m_Rules.reset( rhs.m_Rules->clone() );
- m_Item.reset( OFstatic_cast(DcmItem*, rhs.m_Item->clone()) );
- m_Parent = NULL;
+ m_Item.reset(OFstatic_cast(DcmItem*, rhs.m_Item->clone()));
+ m_Rules.reset(rhs.m_Rules->clone());
+ m_Parent = OFnullptr;
}
return *this;
}
-IODComponent::IODComponent(const IODComponent& rhs)
-{
-
- if (this == &rhs)
- return;
-
- *this = rhs;
-}
-
-
void IODComponent::inventMissing()
{
// Try to fill in missing type 1 information
if (isSequence)
{
DcmElement *elem = NULL;
- source.findAndGetElement( (*rule)->getTagKey(), elem);
- DcmIODUtil::checkElementValue(elem, (*rule)->getTagKey(), (*rule)->getVM(), (*rule)->getType(), EC_Normal, (*rule)->getModule().c_str());
+ OFCondition cond = source.findAndGetElement( (*rule)->getTagKey(), elem);
+ DcmIODUtil::checkElementValue(elem, (*rule)->getTagKey(), (*rule)->getVM(), (*rule)->getType(), cond, (*rule)->getModule().c_str());
}
else // Normal attributes are checked and copied over into this IOD component
{
}
+IODModule::IODModule(const IODModule& rhs)
+: IODComponent(rhs.m_Item, rhs.m_Rules, rhs.m_Parent)
+{
+
+}
+
+
IODModule::IODModule(OFshared_ptr< DcmItem > item,
OFshared_ptr< IODRules > rules)
: IODComponent(item, rules, NULL /* No parent for modules */)
{
// nothing to do, IODComponent does the work
}
+
+
+IODModule& IODModule::operator=(const IODModule& rhs)
+{
+ if (this != &rhs)
+ {
+ m_Item = rhs.m_Item;
+ m_Rules = rhs.m_Rules;
+ m_Parent = rhs.m_Parent;
+ }
+ return *this;
+}
IODCommonInstanceReferenceModule::~IODCommonInstanceReferenceModule()
{
- clearData();
+ freeMemory();
}
void IODCommonInstanceReferenceModule::clearData()
{
- DcmIODUtil::freeContainer(m_StudiesContainingOtherReferencedInstancesSequence);
- DcmIODUtil::freeContainer(m_ReferenceSeriesItems);
+ freeMemory();
}
-
OFCondition IODCommonInstanceReferenceModule::read(DcmItem& source,
const OFBool clearOldData)
{
}
-
OFCondition IODCommonInstanceReferenceModule::addSeriesReference(
OFVector<IODSeriesAndInstanceReferenceMacro::ReferencedSeriesItem*>& container,
const IODReference& ref)
result = m_Item->putAndInsertOFStringArray(DCM_StudyInstanceUID, value);
return result;
}
+
+
+void IODCommonInstanceReferenceModule::freeMemory()
+{
+ DcmIODUtil::freeContainer(m_StudiesContainingOtherReferencedInstancesSequence);
+ DcmIODUtil::freeContainer(m_ReferenceSeriesItems);
+}
\ No newline at end of file
void IODEnhGeneralEquipmentModule::resetRules()
{
- m_Rules->addRule(new IODRule(DCM_Manufacturer, "1","1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_ManufacturerModelName, "1","1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_DeviceSerialNumber, "1","1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_SoftwareVersions, "1-n","1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Manufacturer, "1", "1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ManufacturerModelName, "1", "1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_DeviceSerialNumber, "1", "1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_SoftwareVersions, "1-n", "1", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
}
IODEnhGeneralEquipmentModule::~IODEnhGeneralEquipmentModule()
{
- clearData();
+ // Nothing to do
}
{
// parameters are tag, VM, type. Overwrite old rules if any.
- m_Rules->addRule(new IODRule(DCM_Manufacturer, "1","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_InstitutionName, "1","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_InstitutionAddress, "1","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_StationName, "1","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_InstitutionalDepartmentName, "1","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_ManufacturerModelName, "1","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_DeviceSerialNumber, "1","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
- m_Rules->addRule(new IODRule(DCM_SoftwareVersions, "1-n","3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Manufacturer, "1", "2", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_InstitutionName, "1", "3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_InstitutionAddress, "1", "3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_StationName, "1", "3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_InstitutionalDepartmentName, "1", "3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ManufacturerModelName, "1", "3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_DeviceSerialNumber, "1", "3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_SoftwareVersions, "1-n", "3", getName(), DcmIODTypes::IE_EQUIPMENT), OFTrue);
}
IODGeneralEquipmentModule::~IODGeneralEquipmentModule()
{
- clearData();
}
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmiod
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Floating Point and Double Floating Point Image Pixel Module
+ *
+ */
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+#include "dcmtk/dcmiod/modfloatingpointimagepixel.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmdata/dcvrfl.h"
+#include "dcmtk/dcmdata/dcvrfd.h"
+#include "dcmtk/dcmiod/iodutil.h"
+
+const OFString IODFloatingPointImagePixelModule::m_ModuleName = "FloatingPointImagePixelModule";
+const DcmTagKey IODFloatingPointImagePixelModule::pixel_data_tag = DCM_FloatPixelData;
+const DcmTagKey IODDoubleFloatingPointImagePixelModule::pixel_data_tag = DCM_DoubleFloatPixelData;
+
+
+IODFloatingPointImagePixelModule::IODFloatingPointImagePixelModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules)
+: IODImagePixelBase(item, rules)
+{
+ // reset element rules
+ resetRules();
+ getData().putAndInsertUint16(DCM_BitsAllocated, 32);
+ getData().putAndInsertUint16(DCM_SamplesPerPixel, 1);
+ getData().putAndInsertUint16(DCM_PixelRepresentation, 1);
+ getData().putAndInsertOFStringArray(DCM_PhotometricInterpretation, "MONOCHROME2");
+}
+
+
+OFString IODFloatingPointImagePixelModule::getName() const
+{
+ return m_ModuleName;
+}
+
+
+IODFloatingPointImagePixelModule::IODFloatingPointImagePixelModule()
+: IODImagePixelBase()
+{
+ resetRules();
+}
+
+
+IODFloatingPointImagePixelModule::~IODFloatingPointImagePixelModule()
+{
+ // nothing to do
+}
+
+
+void IODFloatingPointImagePixelModule::resetRules()
+{
+ // Parameters this module is responsible for.
+ m_Rules->addRule(new IODRule(DCM_SamplesPerPixel, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_PhotometricInterpretation, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Rows, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Columns, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_BitsAllocated, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_PixelAspectRatio, "2", "1C", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_FloatPixelPaddingValue, "1", "3", m_ModuleName, DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_FloatPixelPaddingRangeLimit, "1", "1C", m_ModuleName, DcmIODTypes::IE_IMAGE), OFTrue);
+}
+
+
+OFCondition IODFloatingPointImagePixelModule::read(DcmItem& source,
+ const OFBool clearOldData)
+{
+ // Read common attributes
+ IODImagePixelBase::read(source, clearOldData);
+ // Read extra attributes of Floating Point Image Pixel Module
+ IODModule::read(source, clearOldData);
+ return EC_Normal;
+}
+
+
+OFCondition IODFloatingPointImagePixelModule::write(DcmItem& destination)
+{
+ // Write Photometric Interpretation fixed value for Floating Point Image Pixel Module
+ OFCondition result = m_Item->putAndInsertOFStringArray(DCM_PhotometricInterpretation, "MONOCHROME2");
+ // Write common attributes
+ if (result.good())
+ {
+ result = IODImagePixelBase::write(destination);
+ }
+ // Write extra attributes of Floating Poing Image Pixel Module
+ if (result.good())
+ {
+ result = IODModule::write(destination);
+ }
+ return result;
+}
+
+
+IODImagePixelBase::DataType IODFloatingPointImagePixelModule::getDataType() const
+{
+ return IODImagePixelBase::DATA_TYPE_FLOAT;
+}
+
+
+OFCondition IODFloatingPointImagePixelModule::getFloatPixelPaddingValue(Float32& value,
+ const long pos)
+{
+ return m_Item->findAndGetFloat32(DCM_FloatPixelPaddingValue, value, pos);
+}
+
+
+OFCondition IODFloatingPointImagePixelModule::getFloatPixelPaddingRangeLimit(Float32& value,
+ const long pos)
+{
+ return m_Item->findAndGetFloat32(DCM_FloatPixelPaddingRangeLimit, value, pos);
+}
+
+
+OFCondition IODFloatingPointImagePixelModule::setFloatPixelPaddingValue(const Float32 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertFloat32(DCM_FloatPixelPaddingValue, value);
+}
+
+
+OFCondition IODFloatingPointImagePixelModule::setFloatPixelPaddingRangeLimit(const Float32 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertFloat32(DCM_FloatPixelPaddingRangeLimit, value);
+}
+
+// ---------------- Double Floating Point Image Pixel Module ------------------
+
+const OFString IODDoubleFloatingPointImagePixelModule::m_ModuleName = "DoubleFloatingPointImagePixelModule";
+
+
+IODDoubleFloatingPointImagePixelModule::IODDoubleFloatingPointImagePixelModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules)
+: IODImagePixelBase(item, rules)
+{
+ // reset element rules
+ resetRules();
+
+ getData().putAndInsertUint16(DCM_BitsAllocated, 64);
+ getData().putAndInsertUint16(DCM_SamplesPerPixel, 1);
+ getData().putAndInsertUint16(DCM_PixelRepresentation, 1);
+ getData().putAndInsertOFStringArray(DCM_PhotometricInterpretation, "MONOCHROME2");
+}
+
+
+OFString IODDoubleFloatingPointImagePixelModule::getName() const
+{
+ return m_ModuleName;
+}
+
+
+IODDoubleFloatingPointImagePixelModule::IODDoubleFloatingPointImagePixelModule()
+: IODImagePixelBase()
+{
+ resetRules();
+}
+
+
+IODDoubleFloatingPointImagePixelModule::~IODDoubleFloatingPointImagePixelModule()
+{
+ // nothing to do
+}
+
+
+void IODDoubleFloatingPointImagePixelModule::resetRules()
+{
+ // Parameters are tag, VM, type. Overwrite old rules if any.
+ // Take over responsibility for Photometric Interpretation since we want to write
+ // "MONOCHROME2" as a fixed value.
+ m_Rules->addRule(new IODRule(DCM_SamplesPerPixel, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_PhotometricInterpretation, "1", "1", getName(), DcmIODTypes::IE_IMAGE, "MONOCHROME2"), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Rows, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Columns, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_BitsAllocated, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_PixelAspectRatio, "2", "1C", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_DoubleFloatPixelPaddingValue, "1", "3", m_ModuleName, DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_DoubleFloatPixelPaddingRangeLimit, "1", "1C", m_ModuleName, DcmIODTypes::IE_IMAGE), OFTrue);
+}
+
+
+OFCondition IODDoubleFloatingPointImagePixelModule::read(DcmItem& source,
+ const OFBool clearOldData)
+{
+ // Read common attributes
+ IODImagePixelBase::read(source, clearOldData);
+ // Read extra attributes of Floating Point Image Pixel Module
+ IODModule::read(source, clearOldData);
+ return EC_Normal;
+}
+
+
+OFCondition IODDoubleFloatingPointImagePixelModule::write(DcmItem& destination)
+{
+ // Write Photometric Interpretation fixed value for Floating Point Image Pixel Module
+ OFCondition result = m_Item->putAndInsertOFStringArray(DCM_PhotometricInterpretation, "MONOCHROME2");
+ // Write common attributes
+ if (result.good())
+ {
+ result = IODImagePixelBase::write(destination);
+ }
+ // Write extra attributes of Floating Poing Image Pixel Module
+ if (result.good())
+ {
+ result = IODModule::write(destination);
+ }
+ return result;
+}
+
+
+IODImagePixelBase::DataType IODDoubleFloatingPointImagePixelModule::getDataType() const
+{
+ return IODImagePixelBase::DATA_TYPE_DOUBLE;
+}
+
+
+OFCondition IODDoubleFloatingPointImagePixelModule::getDoubleFloatPixelPaddingValue(Float64& value,
+ const long pos)
+{
+ return m_Item->findAndGetFloat64(DCM_FloatPixelPaddingValue, value, pos);
+}
+
+
+OFCondition IODDoubleFloatingPointImagePixelModule::getDoubleFloatPixelPaddingRangeLimit(Float64& value,
+ const long pos)
+{
+ return m_Item->findAndGetFloat64(DCM_DoubleFloatPixelPaddingRangeLimit, value, pos);
+}
+
+
+OFCondition IODDoubleFloatingPointImagePixelModule::setDoubleFloatPixelPaddingValue(const Float64 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertFloat64(DCM_DoubleFloatPixelPaddingValue, value);
+}
+
+
+OFCondition IODDoubleFloatingPointImagePixelModule::setDoubleFloatPixelPaddingRangeLimit(const Float64 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertFloat64(DCM_DoubleFloatPixelPaddingRangeLimit, value);
+}
IODFoRModule::~IODFoRModule()
{
- // clear rules from rule set
- clearData();
+ // Nothing to do
}
}
-
OFCondition IODFoRModule::setFrameOfReferenceUID(const OFString &value,
const OFBool checkValue)
{
return result;
}
+
+void IODFoRModule::ensureFrameOfReferenceUID(const OFBool correctInvalid)
+{
+ OFString uidstr;
+
+ // Create new Frame of Reference instance UID if required
+ if (getFrameOfReferenceUID(uidstr).bad() || uidstr.empty() )
+ {
+ setFrameOfReferenceUID(DcmIODUtil::createUID(1 /* Series Level */));
+ }
+ else if (!uidstr.empty() && correctInvalid)
+ {
+ if (DcmUniqueIdentifier::checkStringValue(uidstr, "1").bad())
+ {
+ setFrameOfReferenceUID(DcmIODUtil::createUID(1 /* Series Level */));
+ }
+ }
+}
+
#include "dcmtk/dcmdata/dcvris.h"
#include "dcmtk/dcmiod/iodutil.h"
-const OFString IODImagePixelModule::m_ModuleName = "ImagePixelModule";
-
-
-IODImagePixelModule::IODImagePixelModule(OFshared_ptr<DcmItem> item,
- OFshared_ptr<IODRules> rules)
-: IODModule(item, rules)
+template<typename T>
+const OFString IODImagePixelModule<T>::m_ModuleName = "ImagePixelModule";
+template<typename T>
+const DcmTagKey IODImagePixelModule<T>::pixel_data_tag = DCM_PixelData;
+
+template<typename T>
+IODImagePixelModule<T>::IODImagePixelModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules)
+: IODImagePixelBase(item, rules)
{
// reset element rules
resetRules();
}
-
-OFString IODImagePixelModule::getName() const
+template<typename T>
+OFString IODImagePixelModule<T>::getName() const
{
return m_ModuleName;
}
-
-IODImagePixelModule::IODImagePixelModule()
-: IODModule()
+template<typename T>
+IODImagePixelModule<T>::IODImagePixelModule()
+: IODImagePixelBase()
{
resetRules();
}
+template<typename T>
+IODImagePixelModule<T>::~IODImagePixelModule()
+{
+}
-void IODImagePixelModule::resetRules()
+template<typename T>
+void IODImagePixelModule<T>::resetRules()
{
// parameters are tag, VM, type. Overwrite old rules if any.
m_Rules->addRule(new IODRule(DCM_SamplesPerPixel, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
m_Rules->addRule(new IODRule(DCM_PhotometricInterpretation, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
m_Rules->addRule(new IODRule(DCM_Rows, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
- m_Rules->addRule(new IODRule(DCM_Columns, "1", "1n", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_Columns, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
m_Rules->addRule(new IODRule(DCM_BitsAllocated, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
m_Rules->addRule(new IODRule(DCM_BitsStored, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
m_Rules->addRule(new IODRule(DCM_HighBit, "1", "1", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
m_Rules->addRule(new IODRule(DCM_ICCProfile, "1", "3", getName(), DcmIODTypes::IE_IMAGE), OFTrue);
}
-
-IODImagePixelModule::~IODImagePixelModule()
+template<typename T>
+OFCondition IODImagePixelModule<T>::read(DcmItem& source,
+ const OFBool clearOldData)
{
+ // Read common attributes
+ IODImagePixelBase::read(source, clearOldData);
+ // Read extra attributes of Image Pixel Module
+ IODModule::read(source, clearOldData);
+ return EC_Normal;
}
-
-OFCondition IODImagePixelModule::getSamplesPerPixel(Uint16 &value,
- const signed long pos)
+template<typename T>
+OFCondition IODImagePixelModule<T>::write(DcmItem& destination)
{
- return m_Item->findAndGetUint16(DCM_SamplesPerPixel, value, pos);
-}
-
-
-OFCondition IODImagePixelModule::getPhotometricInterpretation(OFString&value,
- const signed long pos)
-{
- return DcmIODUtil::getStringValueFromItem(DCM_PhotometricInterpretation, *m_Item, value, pos);
-}
-
-
-OFCondition IODImagePixelModule::getRows(Uint16& value,
- const signed long pos)
-{
- return m_Item->findAndGetUint16(DCM_Rows, value, pos);
-}
-
-
-OFCondition IODImagePixelModule::getColumns(Uint16& value,
- const signed long pos)
-{
- return m_Item->findAndGetUint16(DCM_Columns, value, pos);
+ // Write common attributes
+ OFCondition result = IODImagePixelBase::write(destination);
+ // Write extra attributes of Image Pixel Module
+ if (result.good())
+ {
+ IODModule::write(destination);
+ }
+ return result;
}
-
-OFCondition IODImagePixelModule::getBitsAllocated(Uint16& value,
- const signed long pos)
+template<typename T>
+IODImagePixelBase::DataType IODImagePixelModule<T>::getDataType() const
{
- return m_Item->findAndGetUint16(DCM_BitsAllocated, value, pos);
+ return IODImagePixelBase::DATA_TYPE_INTEGER;
}
-
-OFCondition IODImagePixelModule::getBitsStored(Uint16& value,
- const signed long pos)
+template<typename T>
+OFCondition IODImagePixelModule<T>::getBitsStored(Uint16& value,
+ const signed long pos)
{
return m_Item->findAndGetUint16(DCM_BitsStored, value, pos);
}
-
-OFCondition IODImagePixelModule::getHighBit(Uint16& value,
- const signed long pos)
+template<typename T>
+OFCondition IODImagePixelModule<T>::getHighBit(Uint16& value,
+ const signed long pos)
{
return m_Item->findAndGetUint16(DCM_HighBit, value, pos);
}
-
-OFCondition IODImagePixelModule::getPixelRepresentation(Uint16& value,
- const signed long pos)
+template<typename T>
+OFCondition IODImagePixelModule<T>::getPixelRepresentation(Uint16& value,
+ const signed long pos)
{
return m_Item->findAndGetUint16(DCM_PixelRepresentation, value, pos);
}
-
-OFCondition IODImagePixelModule::getPlanarConfiguration(Uint16& value,
- const signed long pos)
+template<typename T>
+OFCondition IODImagePixelModule<T>::getPlanarConfiguration(Uint16& value,
+ const signed long pos)
{
return m_Item->findAndGetUint16(DCM_PlanarConfiguration, value, pos);
}
-
-OFCondition IODImagePixelModule::getPixelAspectRatio(Uint16& value,
- const signed long pos)
-{
- return m_Item->findAndGetUint16(DCM_PixelAspectRatio, value, pos);
-}
-
-
-OFCondition IODImagePixelModule::getICCProfile(OFVector<Uint8>& values)
+template<typename T>
+OFCondition IODImagePixelModule<T>::getICCProfile(OFVector<Uint8>& values)
{
DcmElement* elem = NULL;
OFCondition result = m_Item->findAndGetElement(DCM_ICCProfile, elem);
return EC_TagNotFound;
}
-
-OFCondition IODImagePixelModule::setSamplesPerPixel(const Uint16 value,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setSamplesPerPixel(const Uint16 value,
const OFBool checkValue)
{
OFCondition result = EC_Normal;
if (result.good() )
result = m_Item->putAndInsertUint16(DCM_SamplesPerPixel, value);
- // TODO: Check consistency with photometric interpretation
return result;
}
-
-OFCondition IODImagePixelModule::setPhotometricInterpretation(const OFString& value,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setPhotometricInterpretation(const OFString& value,
const OFBool checkValue)
{
OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
return result;
}
-
-OFCondition IODImagePixelModule::setRows(const Uint16 value,
- const OFBool checkValue)
-{
- (void)checkValue;
- return m_Item->putAndInsertUint16(DCM_Rows, value);
-}
-
-
-OFCondition IODImagePixelModule::setColumns(const Uint16 value,
- const OFBool checkValue)
-{
- (void)checkValue;
- return m_Item->putAndInsertUint16(DCM_Columns, value);
-}
-
-
-OFCondition IODImagePixelModule::setBitsAllocated(const Uint16 value,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setBitsAllocated(const Uint16 value,
const OFBool checkValue)
{
(void)checkValue;
return m_Item->putAndInsertUint16(DCM_BitsAllocated, value);
}
-
-OFCondition IODImagePixelModule::setBitsStored(const Uint16 value,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setBitsStored(const Uint16 value,
const OFBool checkValue)
{
(void)checkValue;
return m_Item->putAndInsertUint16(DCM_BitsStored, value);
}
-
-OFCondition IODImagePixelModule::setHighBit(const Uint16 value,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setHighBit(const Uint16 value,
const OFBool checkValue)
{
(void)checkValue;
return m_Item->putAndInsertUint16(DCM_HighBit, value);
}
-
-OFCondition IODImagePixelModule::setPixelRepresentation(const Uint16 value,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setPixelRepresentation(const Uint16 value,
const OFBool checkValue)
{
OFCondition result = EC_Normal;
return result;
}
-
-OFCondition IODImagePixelModule::setPlanarConfiguration(const Uint16 value,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setPlanarConfiguration(const Uint16 value,
const OFBool checkValue)
{
OFCondition result = EC_Normal;
return result;
}
-
-OFCondition IODImagePixelModule::setPixelAspectRatio(const OFString& verticalPixelSize,
- const OFString& horizontalPixelSize,
- const OFBool checkValue)
-{
- OFString concat = verticalPixelSize;
- concat += "\\"; concat += horizontalPixelSize;
- OFCondition cond;
- if (checkValue)
- {
- cond = DcmIntegerString::checkStringValue(concat, "2");
- // check for unsignedness, too?
- }
- if (cond.good()) m_Item->putAndInsertOFStringArray(DCM_PixelAspectRatio, concat);
- return cond;
-}
-
-
-OFCondition IODImagePixelModule::setICCProfile(const Uint8* values,
+template<typename T>
+OFCondition IODImagePixelModule<T>::setICCProfile(const Uint8* values,
const size_t length)
{
return m_Item->putAndInsertUint8Array(DCM_ICCProfile, values, length);
}
+
+template class IODImagePixelModule<Uint8>;
+template class IODImagePixelModule<Sint8>;
+template class IODImagePixelModule<Uint16>;
+template class IODImagePixelModule<Sint16>;
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmiod
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Base class for Image Pixel Module and related (e.g. Ploating Point)
+ *
+ */
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+#include "dcmtk/dcmiod/modimagepixelbase.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmdata/dcvrobow.h"
+#include "dcmtk/dcmdata/dcvrcs.h"
+#include "dcmtk/dcmdata/dcvris.h"
+#include "dcmtk/dcmiod/iodutil.h"
+
+const OFString IODImagePixelBase::m_ModuleName = "ImagePixelBase";
+
+
+IODImagePixelBase::IODImagePixelBase(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules)
+: IODModule(item, rules)
+{
+ // reset element rules
+ resetRules();
+}
+
+
+OFString IODImagePixelBase::getName() const
+{
+ return m_ModuleName;
+}
+
+
+IODImagePixelBase::IODImagePixelBase()
+: IODModule()
+{
+ resetRules();
+}
+
+
+IODImagePixelBase::~IODImagePixelBase()
+{
+}
+
+
+void IODImagePixelBase::resetRules()
+{
+ // all rules in sub classes
+}
+
+
+OFCondition IODImagePixelBase::getSamplesPerPixel(Uint16 &value,
+ const signed long pos)
+{
+ return m_Item->findAndGetUint16(DCM_SamplesPerPixel, value, pos);
+}
+
+
+OFCondition IODImagePixelBase::getPhotometricInterpretation(OFString&value,
+ const signed long pos)
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_PhotometricInterpretation, *m_Item, value, pos);
+}
+
+
+OFCondition IODImagePixelBase::getRows(Uint16& value,
+ const signed long pos)
+{
+ return m_Item->findAndGetUint16(DCM_Rows, value, pos);
+}
+
+
+OFCondition IODImagePixelBase::getColumns(Uint16& value,
+ const signed long pos)
+{
+ return m_Item->findAndGetUint16(DCM_Columns, value, pos);
+}
+
+
+OFCondition IODImagePixelBase::getBitsAllocated(Uint16& value,
+ const signed long pos)
+{
+ return m_Item->findAndGetUint16(DCM_BitsAllocated, value, pos);
+}
+
+
+OFCondition IODImagePixelBase::getPixelAspectRatio(Uint16& value,
+ const signed long pos)
+{
+ return m_Item->findAndGetUint16(DCM_PixelAspectRatio, value, pos);
+}
+
+
+OFCondition IODImagePixelBase::setRows(const Uint16 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertUint16(DCM_Rows, value);
+}
+
+
+OFCondition IODImagePixelBase::setColumns(const Uint16 value,
+ const OFBool checkValue)
+{
+ (void)checkValue;
+ return m_Item->putAndInsertUint16(DCM_Columns, value);
+}
+
+
+OFCondition IODImagePixelBase::setPixelAspectRatio(const OFString& verticalPixelSize,
+ const OFString& horizontalPixelSize,
+ const OFBool checkValue)
+{
+ OFString concat = verticalPixelSize;
+ concat += "\\"; concat += horizontalPixelSize;
+ OFCondition cond;
+ if (checkValue)
+ {
+ cond = DcmIntegerString::checkStringValue(concat, "2");
+ // check for unsignedness, too?
+ }
+ if (cond.good()) m_Item->putAndInsertOFStringArray(DCM_PixelAspectRatio, concat);
+ return cond;
+}
return IOD_EC_MissingAttribute;
}
+ // Add Dimension Organization by its UID if such organization does not exist yet
+ OFVector<DimensionOrganizationItem*>::iterator it = m_DimensionOrganizationSequence.begin();
+ while (it != m_DimensionOrganizationSequence.end())
+ {
+ OFString val;
+ (*it)->getDimensionOrganizationUID(val);
+ if (val == dimensionOrganizationUID)
+ {
+ break;
+ }
+ it++;
+ }
+ OFCondition result;
+ if (it == m_DimensionOrganizationSequence.end())
+ {
+ DimensionOrganizationItem* item = new DimensionOrganizationItem;
+ if (item == NULL)
+ {
+ return EC_MemoryExhausted;
+ }
+ result = item->setDimensionOrganizationUID(dimensionOrganizationUID);
+ if (result.bad())
+ return result;
+ m_DimensionOrganizationSequence.push_back(item);
+ }
+
+ // Create dimension and add it to this object
DimensionIndexItem* dim = new DimensionIndexItem();
if (!dim)
return EC_MemoryExhausted;
- OFCondition result = dim->setDimensionOrganizationUID(dimensionOrganizationUID);
+ result = dim->setDimensionOrganizationUID(dimensionOrganizationUID);
if (result.good()) result = dim->setFunctionalGroupPointer(functionalGroupPointer);
if (result.good()) result = dim->setDimensionIndexPointer(dimensionIndexPointer);
if (result.good() && !dimensionIndexPrivateCreator.empty()) dim->setDimensionIndexPrivateCreator(dimensionIndexPrivateCreator);
if (result.good() && !functionalGroupPrivateCreator.empty()) dim->setFunctionalGroupPrivateCreator(functionalGroupPrivateCreator);
if (result.good() && !dimensionDescriptionLabel.empty()) dim->setDimensionDescriptionLabel(dimensionDescriptionLabel);
-
if (result.bad())
{
DCMIOD_ERROR("Could not add Dimension Index: Invalid data values");
delete dim;
}
-
m_DimensionIndexSequence.push_back(dim);
return result;
OFCondition IODMultiFrameFGModule::setConcatenationInfo(const IODMultiFrameFGModule::ConcatenationInfo& concatenationInfo)
{
- // TODO: Checks?
m_ConcatenationInfo = concatenationInfo;
return EC_Normal;
}
}
-
OFCondition IODMultiFrameFGModule::setContentDate(const OFString& value,
const OFBool checkValue)
{
IODSynchronizationModule::~IODSynchronizationModule()
{
- // clear rules from rule set
- clearData();
}
OFCondition IODSynchronizationModule::setSynchronizationTrigger(const OFString &value,
const OFBool checkValue)
{
- OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = m_Item->putAndInsertOFStringArray(DCM_SynchronizationTrigger, value);
- // TODO: Further checks since this field has enumerated values
- return result;
+ if (checkValue && !isValidSynchronizationTrigger(value))
+ {
+ DCMIOD_ERROR("Synchronization Trigger does not allow value " << value << " (enumerated values)");
+ return IOD_EC_InvalidElementValue;
+ }
+ return m_Item->putAndInsertOFStringArray(DCM_SynchronizationTrigger, value);
}
OFCondition IODSynchronizationModule::setAcquisitionTimeSynchronized(const OFString &value,
const OFBool checkValue)
{
- OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = m_Item->putAndInsertOFStringArray(DCM_AcquisitionTimeSynchronized, value);
- // TODO: Further checks since this field has enumerated values
- return result;
+ if (checkValue && !isValidAcquisitionTimeSynchronized(value))
+ {
+ DCMIOD_ERROR("Acquisition Time Synchronized must only allows values 'Y' and 'N' (enumerated values)");
+ return IOD_EC_InvalidElementValue;
+ }
+ return m_Item->putAndInsertOFStringArray(DCM_AcquisitionTimeSynchronized, value);
}
OFCondition IODSynchronizationModule::setTimeDistributionProtocol(const OFString &value,
const OFBool checkValue)
{
- OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = m_Item->putAndInsertOFStringArray(DCM_TimeDistributionProtocol, value);
- // TODO: Further checks since this field has enumerated values
- return result;
+ if (checkValue && !isValidTimeDistributionProtocol(value))
+ {
+ DCMIOD_ERROR("Time Distribution Protocol does not allow value " << value << " (enumerated values)");
+ return IOD_EC_InvalidElementValue;
+ }
+ return m_Item->putAndInsertOFStringArray(DCM_TimeDistributionProtocol, value);
}
+
OFCondition IODSynchronizationModule::setNTPSourceAddress(const OFString &value,
const OFBool checkValue)
{
result = m_Item->putAndInsertOFStringArray(DCM_NTPSourceAddress, value);
return result;
}
+
+
+
+OFBool IODSynchronizationModule::isValidAcquisitionTimeSynchronized(const OFString& value)
+{
+ return ( (value == "Y") || (value == "N") );
+
+}
+
+
+OFBool IODSynchronizationModule::isValidTimeDistributionProtocol(const OFString& value)
+{
+ return ( (value == "NTP") || (value == "IRIG") || (value == "GPS") || (value == "SNTP") || (value == "PTP") );
+}
+
+
+OFBool IODSynchronizationModule::isValidSynchronizationTrigger(const OFString& value)
+{
+ return ( (value == "SOURCE") || (value == "EXTERNAL") || (value == "PASSTHRU") || (value == "NO TRIGGER") );
+}
+
IODUSFoRModule::~IODUSFoRModule()
{
- // clear rules from rule set
- clearData();
+ // Nothing to do
}
# declare executables
-DCMTK_ADD_EXECUTABLE(dcmiod_tests tests tcielabutil)
+DCMTK_ADD_EXECUTABLE(dcmiod_tests tests tcielabutil timagepixel)
# make sure executables are linked to the corresponding libraries
DCMTK_TARGET_LINK_MODULES(dcmiod_tests dcmiod dcmdata oflog ofstd)
../../oflog/include/dcmtk/oflog/logmacro.h \
../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
../../oflog/include/dcmtk/oflog/tracelog.h
+timagepixel.o: timagepixel.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../ofstd/include/dcmtk/ofstd/oftest.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
+ ../include/dcmtk/dcmiod/iodcommn.h ../include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../include/dcmtk/dcmiod/iodtypes.h ../include/dcmtk/dcmiod/ioddef.h \
+ ../include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmiod/modpatient.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmiod/modbase.h \
+ ../include/dcmtk/dcmiod/modpatientstudy.h \
+ ../../ofstd/include/dcmtk/ofstd/ofoption.h \
+ ../include/dcmtk/dcmiod/modgeneralstudy.h \
+ ../include/dcmtk/dcmiod/iodmacro.h \
+ ../include/dcmtk/dcmiod/modequipment.h \
+ ../include/dcmtk/dcmiod/modgeneralseries.h \
+ ../include/dcmtk/dcmiod/modfor.h ../include/dcmtk/dcmiod/modsopcommon.h \
+ ../include/dcmtk/dcmiod/modcommoninstanceref.h \
+ ../include/dcmtk/dcmiod/iodreferences.h \
+ ../include/dcmtk/dcmiod/modgeneralimage.h \
+ ../include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../include/dcmtk/dcmiod/modimagepixel.h \
+ ../include/dcmtk/dcmiod/modfloatingpointimagepixel.h
LOCALLIBS = -ldcmiod -ldcmdata -loflog -lofstd \
$(TIFFLIBS) $(PNGLIBS) $(ZLIBLIBS) $(ICONVLIBS)
-test_objs = tests.o tcielabutil.o
+test_objs = tests.o tcielabutil.o timagepixel.o
objs = tests.o $(test_objs)
progs = tests
#include "dcmtk/ofstd/oftest.h"
OFTEST_REGISTER(dcmiod_tcielabutil);
+OFTEST_REGISTER(dcmiod_imagepixel);
OFTEST_MAIN("dcmiod")
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, OFFIS e.V.
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation were developed by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmiod
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Tests for dcmiod's color conversion functionalities
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+
+#include "dcmtk/ofstd/oftest.h"
+#include "dcmtk/dcmiod/iodimage.h"
+#include "dcmtk/dcmiod/modimagepixel.h"
+#include "dcmtk/dcmiod/modfloatingpointimagepixel.h"
+
+OFTEST(dcmiod_imagepixel)
+{
+ DcmIODImage<IODImagePixelModule<Uint8>,IODFloatingPointImagePixelModule> image1;
+ DcmIODImage<IODImagePixelModule<Uint8>,IODImagePixelModule<Uint8>,IODDoubleFloatingPointImagePixelModule> image2( OFin_place<IODImagePixelModule<Uint8> > );
+}
/*
*
- * Copyright (C) 2003-2014, OFFIS e.V.
+ * Copyright (C) 2003-2016, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
/* check parameters (at least the pointers) */
if ((dataset != NULL) && (pixel != NULL) && (frame > 0))
{
- size_t flags = CIF_UsePartialAccessToPixelData | CIF_NeverAccessEmbeddedOverlays;
+ unsigned long flags = CIF_UsePartialAccessToPixelData | CIF_NeverAccessEmbeddedOverlays;
if (decompressAll)
flags |= CIF_DecompressCompletePixelData;
/* open referenced image */
/*
*
- * Copyright (C) 2001-2015, OFFIS e.V.
+ * Copyright (C) 2001-2016, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
}
/* Set and check photometric interpretation (up to now: EPI_RGB)
- * Only photometric interpretations, that are explicetly "supported" by the
+ * Only photometric interpretations, that are explicitly "supported" by the
* IJG lib are set. For all others "unknown" is set. Some are even rejected here.
*/
if (photometricInterpretation == "MONOCHROME1")
if (result.good()) result = adjustOverlays(dataset, dimage);
// VOI transformations should only be applied on the dataset level, not
- // in nested items such as the Icon Image Sequence where we don't exect
+ // in nested items such as the Icon Image Sequence where we don't expect
// a VOI window or LUT to be present
size_t windowType = 0;
if (dataset->ident() == EVR_dataset)
if (classUID && ! cp->getConvertToSC())
{
// these three SOP classes use the X-Ray Image Module in which the meaning
- // of the Modality LUT transformation is "inversersed" and, therefore,
+ // of the Modality LUT transformation is "inversed" and, therefore,
// needs special handling. This is not an issue if we're converting to
// secondary capture anyway.
if ((0 == strcmp(classUID, UID_XRayAngiographicImageStorage)) ||
const Uint16 samplesPerPixel,
const Uint16 oldPlanarConfig)
{
- if ( (pixelData == NULL) )
+ if (pixelData == NULL)
return EC_IllegalParameter;
// allocate target buffer
Uint8* px8 = new Uint8[numValues];
const Uint16 samplesPerPixel,
const Uint16 oldPlanarConfig)
{
- if ( (pixelData == NULL) )
+ if (pixelData == NULL)
return EC_IllegalParameter;
// allocate target buffer
Uint16* px16 = new Uint16[numValues];
public:
DecoderStrategy(const JlsParameters& info) :
_info(info),
- _processLine(0),
+ _processLine(0),
_readCache(0),
_validBits(0),
- _position(0)
+ _position(0),
+ _size(0),
+ _current_offset(0),
+ _nextFFPosition(0)
{
}
}
virtual void SetPresets(const JlsCustomParameters& presets) = 0;
- virtual size_t DecodeScan(void* outputData, const JlsRect& size, const void* compressedData, size_t byteCount, bool bCheck) = 0;
+ virtual size_t DecodeScan(void* outputData, const JlsRect& size, BYTE **buf, size_t *buf_size, size_t offset, bool bCheck) = 0;
- void Init(BYTE* compressedBytes, size_t byteCount)
+ void Init(BYTE **ptr, size_t *size, size_t offset)
{
_validBits = 0;
_readCache = 0;
- _position = compressedBytes;
- _endPosition = compressedBytes + byteCount;
+ _position = ptr;
+ _size = size;
+ _current_offset = offset;
_nextFFPosition = FindNextFF();
MakeValid();
}
void EndScan()
{
- if ((*_position) != 0xFF)
+ if (current_value() != 0xFF)
{
ReadBit();
- if ((*_position) != 0xFF)
+ if (current_value() != 0xFF)
throw JlsException(TooMuchCompressedData);
}
inlinehint bool OptimizedRead()
{
// Easy & fast: if there is no 0xFF byte in sight, we can read without bitstuffing
- if (_position < _nextFFPosition - (sizeof(bufType)-1))
+ if (_current_offset < _nextFFPosition - (sizeof(bufType)-1))
{
- _readCache |= FromBigEndian<sizeof(bufType)>::Read(_position) >> _validBits;
+ _readCache |= FromBigEndian<sizeof(bufType)>::Read(*_position + _current_offset) >> _validBits;
int bytesToRead = (bufferbits - _validBits) >> 3;
- _position += bytesToRead;
+ _current_offset += bytesToRead;
_validBits += bytesToRead * 8;
ASSERT(_validBits >= bufferbits - 8);
return true;
do
{
- if (_position >= _endPosition)
+ if (_current_offset >= *_size)
{
if (_validBits <= 0)
throw JlsException(InvalidCompressedData);
return;
}
- bufType valnew = _position[0];
+ bufType valnew = current_value();
if (valnew == 0xFF)
{
// JPEG bitstream rule: no FF may be followed by 0x80 or higher
- if (_position == _endPosition - 1 || (_position[1] & 0x80) != 0)
+ if (_current_offset == *_size - 1 || ((*_position)[_current_offset + 1] & 0x80) != 0)
{
if (_validBits <= 0)
throw JlsException(InvalidCompressedData);
}
_readCache |= valnew << (bufferbits - 8 - _validBits);
- _position += 1;
+ _current_offset += 1;
_validBits += 8;
if (valnew == 0xFF)
}
- BYTE* FindNextFF()
+ size_t FindNextFF()
{
- BYTE* pbyteNextFF = _position;
+ size_t off = _current_offset;
- while (pbyteNextFF < _endPosition)
+ while (off < *_size)
{
- if (*pbyteNextFF == 0xFF)
+ if ((*_position)[off] == 0xFF)
{
break;
}
- pbyteNextFF++;
+ off++;
}
- return pbyteNextFF;
+ return off;
}
- BYTE* GetCurBytePos() const
+ BYTE *GetCurBytePos() const
{
LONG validBits = _validBits;
- BYTE* compressedBytes = _position;
+ size_t off = _current_offset;
for (;;)
{
- LONG cbitLast = compressedBytes[-1] == 0xFF ? 7 : 8;
+ LONG cbitLast = (*_position)[off - 1] == 0xFF ? 7 : 8;
if (validBits < cbitLast )
- return compressedBytes;
+ return (*_position) + off;
validBits -= cbitLast;
- compressedBytes--;
- }
+ off--;
+ }
}
OFauto_ptr<ProcessLine> _processLine;
private:
+ BYTE current_value() const
+ {
+ return (*_position)[_current_offset];
+ }
+
// decoding
bufType _readCache;
LONG _validBits;
- BYTE* _position;
- BYTE* _nextFFPosition;
- BYTE* _endPosition;
+ BYTE **_position;
+ size_t *_size;
+ size_t _current_offset;
+ size_t _nextFFPosition;
};
#ifndef CHARLS_ENCODERSTRATEGY
#define CHARLS_ENCODERSTRATEGY
+#define INCLUDE_NEW
+#include "dcmtk/ofstd/ofstdinc.h"
+
#include "dcmtk/ofstd/ofaptr.h"
+#include "dcmtk/ofstd/ofbmanip.h"
#include "procline.h"
#include "decodstr.h"
virtual void SetPresets(const JlsCustomParameters& presets) = 0;
- virtual size_t EncodeScan(const void* pvoid, void* pvoidOut, size_t byteCount, void* pvoidCompare) = 0;
+ virtual size_t EncodeScan(const void* rawData, BYTE **ptr, size_t *size, size_t offset, bool compare) = 0;
protected:
- void Init(BYTE* compressedBytes, size_t byteCount)
+ void Init(BYTE **ptr, size_t *size, size_t offset)
{
bitpos = 32;
valcurrent = 0;
- _position = compressedBytes;
- _compressedLength = byteCount;
+ _position = ptr;
+ _size = size;
+ _current_offset = offset;
}
if (_isFFWritten)
{
// JPEG-LS requirement (T.87, A.1) to detect markers: after a xFF value a single 0 bit needs to be inserted.
- *_position = BYTE(valcurrent >> 25);
- valcurrent = valcurrent << 7;
- bitpos += 7;
+ write(BYTE(valcurrent >> 25));
+ valcurrent = valcurrent << 7;
+ bitpos += 7;
_isFFWritten = false;
}
else
{
- *_position = BYTE(valcurrent >> 24);
+ write(BYTE(valcurrent >> 24));
+ _isFFWritten = (*_position)[_current_offset - 1] == 0xFF;
valcurrent = valcurrent << 8;
- bitpos += 8;
- _isFFWritten = *_position == 0xFF;
+ bitpos += 8;
}
-
- _position++;
- _compressedLength--;
- _bytesWritten++;
}
JlsParameters _info;
OFauto_ptr<ProcessLine> _processLine;
private:
+ static BYTE *re_alloc(BYTE *old_ptr, size_t *old_size)
+ {
+ size_t new_size = *old_size * 2;
+#ifdef HAVE_STD__NOTHROW
+ BYTE *new_ptr = new(std::nothrow) BYTE[new_size];
+#else
+ BYTE *new_ptr = new BYTE[new_size];
+#endif
+ if (new_ptr == NULL) {
+ throw alloc_fail();
+ }
+
+ OFBitmanipTemplate<BYTE>::copyMem(old_ptr, new_ptr, *old_size);
+
+ delete[] old_ptr;
+
+ *old_size = new_size;
+
+ return new_ptr;
+ }
+
+ void write(BYTE value)
+ {
+ if (_current_offset == *_size) {
+ *_position = re_alloc(*_position, _size);
+ }
+
+ (*_position)[_current_offset] = value;
+ ++_current_offset;
+ ++_bytesWritten;
+ }
unsigned int valcurrent;
LONG bitpos;
- size_t _compressedLength;
// encoding
- BYTE* _position;
+ BYTE **_position;
+ size_t *_size;
+ size_t _current_offset;
bool _isFFWritten;
size_t _bytesWritten;
//
JLSOutputStream::JLSOutputStream() :
_bCompare(false),
- _pdata(NULL),
- _cbyteOffset(0),
- _cbyteLength(0),
+ _cbytesWritten(0),
_icompLast(0)
{
}
//
// Write()
//
-size_t JLSOutputStream::Write(BYTE* pdata, size_t cbyteLength)
+size_t JLSOutputStream::Write(BYTE **ptr, size_t *size, size_t offset)
{
- _pdata = pdata;
- _cbyteLength = cbyteLength;
+ _position = ptr;
+ _size = size;
+ _current_offset = offset;
WriteByte(0xFF);
+
WriteByte(JPEG_SOI);
for (size_t i = 0; i < _segments.size(); ++i)
WriteByte(0xFF);
WriteByte(JPEG_EOI);
- return _cbyteOffset;
+ return _cbytesWritten;
}
{
OFauto_ptr<DecoderStrategy> qcodec = JlsCodecFactory<DecoderStrategy>().GetCodec(_info, _info.custom);
- _cbyteOffset += qcodec->DecodeScan(pvout, _rect, _pdata + _cbyteOffset, _cbyteLength - _cbyteOffset, _bCompare);
+ BYTE **ptr = (BYTE **)&_pdata;
+ size_t *size = &_cbyteLength;
+ _cbyteOffset += qcodec->DecodeScan(pvout, _rect, ptr, size, _cbyteOffset, _bCompare);
}
JlsParameters info = _info;
info.components = _ccompScan;
OFauto_ptr<EncoderStrategy> qcodec =JlsCodecFactory<EncoderStrategy>().GetCodec(info, _info.custom);
- size_t cbyteWritten = qcodec->EncodeScan((BYTE*)_pvoidRaw, pstream->GetPos(), pstream->GetLength(), pstream->_bCompare ? pstream->GetPos() : NULL);
- pstream->Seek(cbyteWritten);
+ size_t cbyteWritten = qcodec->EncodeScan((BYTE*)_pvoidRaw, pstream->get_pos(), pstream->get_size(), pstream->get_offset(), pstream->_bCompare);
+ pstream->seek(cbyteWritten);
}
return CheckParameterCoherent(pparams);
}
+JLS_ERROR CheckInput(const void* uncompressedData, size_t uncompressedLength, const JlsParameters* pparams)
+{
+ if (pparams == NULL)
+ return InvalidJlsParameters;
+
+ if (uncompressedData == NULL)
+ return InvalidJlsParameters;
+
+ if (pparams->width < 1 || pparams->width > 65535)
+ return ParameterValueNotSupported;
+
+ if (pparams->height < 1 || pparams->height > 65535)
+ return ParameterValueNotSupported;
+
+ int bytesperline = pparams->bytesperline < 0 ? -pparams->bytesperline : pparams->bytesperline;
+
+ if (uncompressedLength < size_t(bytesperline * pparams->height))
+ return InvalidJlsParameters;
+
+ return CheckParameterCoherent(pparams);
+}
+
extern "C"
{
-CHARLS_IMEXPORT(JLS_ERROR) JpegLsEncode(void* compressedData, size_t compressedLength, size_t* pcbyteWritten, const void* uncompressedData, size_t uncompressedLength, struct JlsParameters* pparams)
+CHARLS_IMEXPORT(JLS_ERROR) JpegLsEncode(BYTE **buf, size_t *buf_size, size_t* pcbyteWritten, const void* uncompressedData, size_t uncompressedLength, struct JlsParameters* pparams)
{
+ *pcbyteWritten = 0;
+
JlsParameters info = *pparams;
if(info.bytesperline == 0)
{
}
}
- JLS_ERROR parameterError = CheckInput(compressedData, compressedLength, uncompressedData, uncompressedLength, &info);
+ JLS_ERROR parameterError = CheckInput(uncompressedData, uncompressedLength, &info);
if (parameterError != OK)
return parameterError;
stream.AddScan(uncompressedData, &info);
}
-
- stream.Write((BYTE*)compressedData, compressedLength);
-
+ try
+ {
+ stream.Write(buf, buf_size, 0);
+ }
+ catch (const alloc_fail&)
+ {
+ return MemoryAllocationFailure;
+ }
+
*pcbyteWritten = stream.GetBytesWritten();
return OK;
}
{
stream.AddScan(uncompressedData, &info);
}
-
- OFVector<BYTE> rgbyteCompressed(compressedLength + 16);
-
- memcpy(&rgbyteCompressed[0], compressedData, compressedLength);
+ size_t buf_size = compressedLength + 16;
+ BYTE *buf = new BYTE[buf_size];
+
+ memcpy(buf, compressedData, compressedLength);
+
stream.EnableCompare(true);
- stream.Write(&rgbyteCompressed[0], compressedLength);
-
+
+ try
+ {
+ stream.Write(&buf, &buf_size, 0);
+ }
+ catch (const alloc_fail&)
+ {
+ return MemoryAllocationFailure;
+ }
+
return OK;
}
extern "C"
{
#endif
- CHARLS_IMEXPORT(enum JLS_ERROR) JpegLsEncode(void* compressedData, size_t compressedLength, size_t* pcbyteWritten,
- const void* uncompressedData, size_t uncompressedLength, struct JlsParameters* pparams);
+ CHARLS_IMEXPORT(enum JLS_ERROR) JpegLsEncode(BYTE **ptr, size_t *size, size_t* pcbyteWritten,
+ const void* uncompressedData, size_t uncompressedLength, struct JlsParameters* pparams);
CHARLS_IMEXPORT(enum JLS_ERROR) JpegLsDecode(void* uncompressedData, size_t uncompressedLength,
const void* compressedData, size_t compressedLength,
TooMuchCompressedData,
ImageTypeNotSupported,
UnsupportedBitDepthForTransform,
- UnsupportedColorTransform
+ UnsupportedColorTransform,
+ MemoryAllocationFailure
};
void DoLine(SAMPLE* pdummy);
void DoLine(Triplet<SAMPLE>* pdummy);
- void DoScan(BYTE* compressedBytes, size_t compressedLength);
+ void DoScan(BYTE **ptr, size_t *size, size_t offset);
public:
ProcessLine* CreateProcess(void* pvoidOut);
void InitDefault();
void InitParams(LONG t1, LONG t2, LONG t3, LONG nReset);
- size_t EncodeScan(const void* rawData, void* pvoidOut, size_t compressedLength, void* pvoidCompare);
- size_t DecodeScan(void* rawData, const JlsRect& size, const void* compressedData, size_t compressedLength, bool bCompare);
+ size_t EncodeScan(const void* rawData, BYTE **ptr, size_t *size, size_t offset, bool compare);
+ size_t DecodeScan(void* rawData, const JlsRect& size, BYTE **buf, size_t *buf_size, size_t offset, bool bCompare);
protected:
// codec parameters
// In ILV_NONE mode, DoScan is called for each component
template<class TRAITS, class STRATEGY>
-void JlsCodec<TRAITS,STRATEGY>::DoScan(BYTE* compressedBytes, size_t compressedLength)
+void JlsCodec<TRAITS,STRATEGY>::DoScan(BYTE **ptr, size_t *size, size_t offset)
{
_width = Info().width;
- STRATEGY::Init(compressedBytes, compressedLength);
+ STRATEGY::Init(ptr, size, offset);
LONG pixelstride = _width + 4;
int components = Info().ilv == ILV_LINE ? Info().components : 1;
// Setup codec for encoding and calls DoScan
template<class TRAITS, class STRATEGY>
-size_t JlsCodec<TRAITS,STRATEGY>::EncodeScan(const void* rawData, void* compressedData, size_t compressedLength, void* pvoidCompare)
+size_t JlsCodec<TRAITS,STRATEGY>::EncodeScan(const void* rawData, BYTE **ptr, size_t *size, size_t offset, bool compare)
{
STRATEGY::_processLine = OFauto_ptr<ProcessLine>(CreateProcess(const_cast<void*>(rawData)));
-
- BYTE* compressedBytes = static_cast<BYTE*>(compressedData);
- if (pvoidCompare != NULL)
+ if (compare)
{
- STRATEGY::_qdecoder = OFauto_ptr<DecoderStrategy>(new JlsCodec<TRAITS,DecoderStrategy>(traits, Info()));
- STRATEGY::_qdecoder->Init((BYTE*)pvoidCompare, compressedLength);
+ STRATEGY::_qdecoder = OFauto_ptr<DecoderStrategy>(new JlsCodec<TRAITS,DecoderStrategy>(traits, Info()));
+ STRATEGY::_qdecoder->Init(ptr, size, offset);
}
- DoScan(compressedBytes, compressedLength);
+ DoScan(ptr, size, offset);
return STRATEGY::GetLength();
// Setup codec for decoding and calls DoScan
template<class TRAITS, class STRATEGY>
-size_t JlsCodec<TRAITS,STRATEGY>::DecodeScan(void* rawData, const JlsRect& rect, const void* compressedData, size_t compressedLength, bool bCompare)
+size_t JlsCodec<TRAITS,STRATEGY>::DecodeScan(void* rawData, const JlsRect& rect, BYTE **ptr, size_t *size, size_t offset, bool bCompare)
{
STRATEGY::_processLine = OFauto_ptr<ProcessLine>(CreateProcess(rawData));
- BYTE* compressedBytes = const_cast<BYTE*>(static_cast<const BYTE*>(compressedData));
_bCompare = bCompare;
BYTE rgbyte[20];
size_t readBytes = 0;
- ::memcpy(rgbyte, compressedBytes, 4);
+ ::memcpy(rgbyte, *ptr + offset + readBytes, 4);
readBytes += 4;
size_t cbyteScanheader = rgbyte[3] - 2;
if (cbyteScanheader > sizeof(rgbyte))
throw JlsException(InvalidCompressedData);
- ::memcpy(rgbyte, compressedBytes, cbyteScanheader);
+ ::memcpy(rgbyte, *ptr + offset + readBytes, cbyteScanheader);
readBytes += cbyteScanheader;
_rect = rect;
- DoScan(compressedBytes + readBytes, compressedLength - readBytes);
+ DoScan(ptr, size, offset + readBytes);
- return STRATEGY::GetCurBytePos() - compressedBytes;
+ return STRATEGY::GetCurBytePos() - (*ptr + offset);
}
// Initialize the codec data structures. Depends on JPEG-LS parameters like T1-T3.
#ifndef CHARLS_STREAMS
#define CHARLS_STREAMS
+#define INCLUDE_NEW
+#include "dcmtk/ofstd/ofstdinc.h"
+
#include "dcmtk/ofstd/ofvector.h"
#include "dcmtk/ofstd/ofbmanip.h"
#include "util.h"
void AddLSE(const JlsCustomParameters* pcustom);
void AddColorTransform(int i);
size_t GetBytesWritten()
- { return _cbyteOffset; }
+ { return _cbytesWritten; }
- size_t GetLength()
- { return _cbyteLength - _cbyteOffset; }
+ size_t Write(BYTE **ptr, size_t *size, size_t offset);
+
+ BYTE **get_pos() { return _position; }
+
+ size_t *get_size() { return _size; }
+
+ size_t get_offset() { return _current_offset; }
- size_t Write(BYTE* pdata, size_t cbyteLength);
-
void EnableCompare(bool bCompare)
{ _bCompare = bCompare; }
private:
- BYTE* GetPos() const
- { return _pdata + _cbyteOffset; }
-
void WriteByte(BYTE val)
{
- ASSERT(!_bCompare || _pdata[_cbyteOffset] == val);
+ ASSERT(!_bCompare || (*_position)[_current_offset] == val);
- _pdata[_cbyteOffset++] = val;
+ if (_current_offset == *_size) {
+ *_position = re_alloc(*_position, _size);
+ }
+
+ (*_position)[_current_offset++] = val;
+
+ _cbytesWritten++;
}
void WriteBytes(const OFVector<BYTE>& rgbyte)
WriteByte(BYTE(val % 0x100));
}
-
- void Seek(size_t byteCount)
- { _cbyteOffset += byteCount; }
+ void seek(size_t n)
+ {
+ _cbytesWritten += n;
+ _current_offset += n;
+ }
bool _bCompare;
private:
- BYTE* _pdata;
- size_t _cbyteOffset;
- size_t _cbyteLength;
+ static BYTE *re_alloc(BYTE *old_ptr, size_t *old_size)
+ {
+ size_t new_size = *old_size * 2;
+#ifdef HAVE_STD__NOTHROW
+ BYTE *new_ptr = new BYTE[new_size];
+#else
+ BYTE *new_ptr = new BYTE[new_size];
+#endif
+ if (new_ptr == NULL) {
+ throw alloc_fail();
+ }
+
+ OFBitmanipTemplate<BYTE>::copyMem(old_ptr, new_ptr, *old_size);
+
+ delete[] old_ptr;
+
+ *old_size = new_size;
+
+ return new_ptr;
+ }
+
+ BYTE **_position;
+ size_t *_size;
+ size_t _current_offset;
+ size_t _cbytesWritten;
LONG _icompLast;
OFVector<JpegSegment*> _segments;
};
#define ABS(a) (((a) > 0) ? (a) : -(a))
#endif
+class alloc_fail { };
inline LONG log_2(LONG n)
{
if (result.good())
{
- // We have no idea how big the compressed pixel data will be and we have no
- // way to find out, so we just allocate a buffer large enough for the raw data
- // plus a little more for JPEG metadata.
- // Yes, this is way too much for just a little JPEG metadata, but some
- // test-images showed that the buffer previously was too small. Plus, at some
- // places charls fails to do proper bounds checking and writes behind the end
- // of the buffer (sometimes way behind its end...).
+ // The buffer is going to be dynamically reallocated if it's too small, so it doesn't matter that
+ // much what initial size we use.
size_t size = frameSize + 1024;
- Uint8 *buffer = new Uint8[size];
+ BYTE *buffer = new BYTE[size];
- JLS_ERROR err = JpegLsEncode(buffer, size, &size, framePointer, frameSize, &jls_params);
+ size_t bytesWritten = 0;
+
+ JLS_ERROR err = JpegLsEncode(&buffer, &size, &bytesWritten, framePointer, frameSize, &jls_params);
result = DJLSError::convert(err);
if (result.good())
{
- // 'size' now contains the size of the compressed data in buffer
- compressedSize = size;
- result = pixelSequence->storeCompressedFrame(offsetList, buffer, size, fragmentSize);
+ compressedSize = bytesWritten;
+ result = pixelSequence->storeCompressedFrame(offsetList, buffer, compressedSize, fragmentSize);
}
delete[] buffer;
result = convertToUninterleaved(frameBuffer, buffer, samplesPerPixel, width, height, jls_params.bitspersample);
}
- // We have no idea how big the compressed pixel data will be and we have no
- // way to find out, so we just allocate a buffer large enough for the raw data
- // plus a little more for JPEG metadata.
- // Yes, this is way too much for just a little JPEG metadata, but some
- // test-images showed that the buffer previously was too small. Plus, at some
- // places charls fails to do proper bounds checking and writes behind the end
- // of the buffer (sometimes way behind its end...).
size_t compressed_buffer_size = buffer_size + 1024;
- Uint8 *compressed_buffer = new Uint8[compressed_buffer_size];
+ BYTE *compressed_buffer = new BYTE[compressed_buffer_size];
+
+ size_t bytesWritten = 0;
- JLS_ERROR err = JpegLsEncode(compressed_buffer, compressed_buffer_size,
- &compressed_buffer_size, framePointer, buffer_size, &jls_params);
+ JLS_ERROR err = JpegLsEncode(&compressed_buffer, &compressed_buffer_size, &bytesWritten, framePointer, buffer_size, &jls_params);
result = DJLSError::convert(err);
if (result.good())
{
// 'compressed_buffer_size' now contains the size of the compressed data in buffer
- compressedSize = compressed_buffer_size;
- result = pixelSequence->storeCompressedFrame(offsetList, compressed_buffer, compressed_buffer_size, fragmentSize);
+ compressedSize = bytesWritten;
+ result = pixelSequence->storeCompressedFrame(offsetList, compressed_buffer, compressedSize, fragmentSize);
}
delete[] buffer;
RETIRED_StandalonePETCurveStorage 1.2.840.10008.5.1.4.1.1.129
EnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.130
BasicStructuredDisplayStorage 1.2.840.10008.5.1.4.1.1.131
+CTDefinedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.1
+CTPerformedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.2
RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
RETIRED_StandalonePETCurveStorage 1.2.840.10008.5.1.4.1.1.129
EnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.130
BasicStructuredDisplayStorage 1.2.840.10008.5.1.4.1.1.131
+CTDefinedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.1
+CTPerformedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.2
RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
# - BreastProjectionXRayImageStorageForProcessing
# - CompositingPlanarMPRVolumetricPresentationStateStorage
# - ContentAssessmentResultsStorage
+# - CTDefinedProcedureProtocolStorage
+# - CTPerformedProcedureProtocolStorage
# - ExtensibleSRStorage
# - GrayscalePlanarMPRVolumetricPresentationStateStorage
# - LegacyConvertedEnhancedCTImageStorage
# - Comprehensive3DSRStorage
# - ContentAssessmentResultsStorage
# - CornealTopographyMapStorage
+# - CTDefinedProcedureProtocolStorage
+# - CTPerformedProcedureProtocolStorage
# - DeformableSpatialRegistrationStorage
# - EncapsulatedCDAStorage
# - EnhancedMRColorImageStorage
void DcmStorageSCU::notifySOPInstanceToBeSent(const TransferEntry &transferEntry)
{
+ // avoid compiler warning
+ (void)transferEntry;
// do nothing in the default implementation
}
/*
*
- * Copyright (C) 1994-2015, OFFIS e.V.
+ * Copyright (C) 1994-2016, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were partly developed by
userInfo->type = *buf++;
// skip unused ("reserved") field
userInfo->rsv1 = *buf++;
- // get and remeber announced length of user data
+ // get and remember announced length of user data
EXTRACT_SHORT_BIG(buf, userInfo->length);
// .. and skip over the two length field bytes
buf += 2;
unsigned long subtrahend)
{
OFStringStream stream;
- stream << "DUL Illegal " << pdu << ". Got " << minuend << " bytes of data and told to subtrat " << subtrahend << " bytes of data";
+ stream << "DUL Illegal " << pdu << ". Got " << minuend << " bytes of data and told to subtract " << subtrahend << " bytes of data";
stream << "." << OFStringStream_ends;
OFCondition ret;
--- /dev/null
+# declare project
+PROJECT(dcmpmaps)
+
+# declare include directories which hold for all subdirectories
+INCLUDE_DIRECTORIES(${dcmpmaps_SOURCE_DIR}/include ${dcmfg_SOURCE_DIR}/include ${dcmiod_SOURCE_DIR}/include ${dcmdata_SOURCE_DIR}/include ${ofstd_SOURCE_DIR}/include ${oflog_SOURCE_DIR}/include ${ZLIB_INCDIR})
+
+# recurse into subdirectories
+FOREACH(SUBDIR libsrc include)
+ ADD_SUBDIRECTORY(${SUBDIR})
+ENDFOREACH(SUBDIR)
--- /dev/null
+#
+# Makefile for dcmpmaps
+#
+
+@SET_MAKE@
+
+SHELL = /bin/sh
+VPATH = @srcdir@:@top_srcdir@/include:@top_srcdir@/@configdir@/include
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+configdir = @top_srcdir@/@configdir@
+
+include $(configdir)/@common_makefile@
+
+
+all: include-all libsrc-all tests-all
+
+install: install-doc install-support
+
+install-doc: docs-install
+
+install-data: data-install
+
+install-etc: etc-install
+
+install-include: include-install
+
+install-lib: libsrc-install install-include
+
+install-support: install-data install-etc
+
+
+include-all:
+ (cd include && $(MAKE) ARCH="$(ARCH)" all)
+
+libsrc-all: include-all
+ (cd libsrc && $(MAKE) ARCH="$(ARCH)" all)
+
+tests-all: libsrc-all
+ (cd tests && $(MAKE) ARCH="$(ARCH)" all)
+
+
+check: tests-all
+ (cd tests && $(MAKE) check)
+
+check-exhaustive: tests-all
+ (cd tests && $(MAKE) check-exhaustive)
+
+
+include-install:
+ (cd include && $(MAKE) ARCH="$(ARCH)" install)
+
+libsrc-install: libsrc-all
+ (cd libsrc && $(MAKE) ARCH="$(ARCH)" install)
+
+docs-install:
+ (cd docs && $(MAKE) install)
+
+data-install:
+ (cd data && $(MAKE) install)
+
+etc-install:
+ (cd etc && $(MAKE) install)
+
+
+clean:
+ (cd include && $(MAKE) clean)
+ (cd libsrc && $(MAKE) clean)
+ (cd tests && $(MAKE) clean)
+ (cd docs && $(MAKE) clean)
+ (cd data && $(MAKE) clean)
+ (cd etc && $(MAKE) clean)
+ rm -f $(TRASH)
+
+distclean:
+ (cd include && $(MAKE) distclean)
+ (cd libsrc && $(MAKE) distclean)
+ (cd tests && $(MAKE) distclean)
+ (cd docs && $(MAKE) distclean)
+ (cd data && $(MAKE) distclean)
+ (cd etc && $(MAKE) distclean)
+ rm -f $(DISTTRASH)
+
+dependencies:
+ (cd libsrc && touch $(DEP) && $(MAKE) dependencies)
+ (cd tests && touch $(DEP) && $(MAKE) dependencies)
--- /dev/null
+#! /bin/sh
+
+parentdir=`pwd`
+thisdir=$parentdir
+
+# The following test constructs relative path from the module
+# directory to the configuration directory. If you know this path
+# you can substitute this with
+# configdir=<relative_path>
+# It is very important that the configdir path is relative.
+
+configdir="configdir"
+
+while test "$parentdir" != "/" -a "$configdir" = "configdir"; do
+ if test -d "$parentdir/config" ; then
+ configdir=$parentdir/config
+ else
+ parentdir=`echo $parentdir | sed 's/\/[^\/]*$//'`
+ fi
+done
+
+if test "$configdir" = "configdir" ; then
+ echo "Cannot find configure directory"
+ exit 1
+fi
+
+if test $# != 0; then
+ case $1 in
+ -a)
+ shift
+ cd "$configdir"
+ echo "running configure in config-directory"
+ ./configure $*
+ cd $thisdir
+ echo "running configure for this module"
+ sh "$configdir/confmod" --srcdir=. $*
+ ;;
+ -c)
+ shift
+ cd "$configdir"
+ echo "running configure in config-directory"
+ ./configure $*
+ ;;
+ *)
+ echo "running configure for this module"
+ sh "$configdir/confmod" --srcdir=. $*
+ ;;
+ esac
+else
+ echo "running configure for this module"
+ sh "$configdir/confmod" --srcdir=. $*
+fi
+
--- /dev/null
+#
+# Makefile for dcmpmap/data
+#
+
+@SET_MAKE@
+
+SHELL = /bin/sh
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+configdir = @top_srcdir@/@configdir@
+
+include $(configdir)/@common_makefile@
+
+
+all:
+
+install:
+
+clean:
+ rm -f $(TRASH)
+
+distclean:
+ rm -f $(DISTTRASH)
--- /dev/null
+#
+# Makefile for dcmpmap/docs
+#
+
+@SET_MAKE@
+
+SHELL = /bin/sh
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+configdir = @top_srcdir@/@configdir@
+
+include $(configdir)/@common_makefile@
+
+
+all:
+
+install:
+
+clean:
+ rm -f $(TRASH)
+
+distclean:
+ rm -f $(DISTTRASH)
--- /dev/null
+/*!
+
+\page mod_dcmpmap dcmpmap: a library for working with parametric map objects
+
+This module contains classes to create, load, access and store DICOM Parametric
+Map objects, which have originally been introduced to the DICOM standard with
+<a href="ftp://medical.nema.org/medical/dicom/final/sup172_ft2.pdf">Supplement
+172</a> in 2014.
+
+In the standard, the data inside each Parametric Map object must rely on one of
+these data types:
+
+\li 16 bit unsigned integer
+\li 16 bit signed integer
+\li 32 bit floating point
+\li 64 bit floating point
+
+All of them are supported by the dcmpmap library.
+
+The main class of this module is:
+\li \b DPMParametricMapIOD
+
+This module makes heavy use of the \ref mod_dcmiod "dcmiod" module for managing
+common IOD attributes and the \ref mod_dcmfg "dcmfg" module for functional group
+support. Read the "Examples" sections for more explanations.
+
+\section Examples
+
+The following two examples show:
+\li How to access and dump information (including the binary data values) from a
+Parametric Map object
+\li and how to use the API to create such an object yourself.
+
+\subsection example_dump Dumping information from Parametric Map
+
+The Parametric Map class uses a template in order to instantiate the correct
+pixel data type internally, and to offer a dedicated API for that type. Allowed
+types are Uint16, Sint16, Float32 and Float64.
+
+Since internally the data types are handled in a C++ Variant, the usual concept
+to "switch" between these types in code is to use a Visitor which overloads the
+operator "()" for each data type that can occur in the Variant. This concept is
+also demonstrated below where the type of pixel data is printed.
+
+The rest of the code uses the API of the \ref mod_dcmiod "dcmiod" and
+\ref mod_dcmfg "dcmfg" module in order to get basic information about Patient,
+Study, Series and Instance, as well as functional group information, especially
+the Real World Value Mapping defined in the file.
+
+\code
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+#include "dcmtk/dcmpmap/dpmparametricmapiod.h"
+
+static void dumpRWVM(const unsigned long frameNumber,
+ FGInterface& fg)
+{
+ FGRealWorldValueMapping* rw = OFstatic_cast(FGRealWorldValueMapping*, fg.get(frameNumber, DcmFGTypes::EFG_REALWORLDVALUEMAPPING));
+ if (rw)
+ {
+ size_t numMappings = rw->getRealWorldValueMapping().size();
+ COUT << " Number of Real World Value Mappings defined: " << numMappings << OFendl;
+ for (size_t m = 0; m < numMappings; m++)
+ {
+ FGRealWorldValueMapping::RWVMItem* item = rw->getRealWorldValueMapping()[m];
+ OFString label, expl;
+ item->getLUTLabel(label);
+ item->getLUTExplanation(expl);
+ COUT << " RWVM Mapping #" << m << ":" << OFendl;
+ COUT << " LUT Label: << " << label << OFendl;
+ COUT << " LUT Explanation: " << expl << OFendl;
+ COUT << " Measurement Units Code: " << item->getMeasurementUnitsCode().toString() << OFendl;
+ size_t numQuant = item->getEntireQuantityDefinitionSequence().size();
+ if (numQuant > 0)
+ {
+ COUT << " Number of Quantities defined: " << numQuant << OFendl;
+ for (size_t q = 0; q < numQuant; q++)
+ {
+ ContentItemMacro* macro = item->getEntireQuantityDefinitionSequence()[q];
+ COUT << " Quantity #" << q << ": " << macro->toString() << OFendl;
+ }
+ }
+ }
+ }
+ else
+ {
+ CERR << " Error: No Real World Value Mappings defined for frame #" << frameNumber << OFendl;
+ }
+}
+
+class DumpFramesVisitor
+{
+public:
+
+ DumpFramesVisitor(DPMParametricMapIOD* map,
+ const unsigned long numPerFrame)
+ : m_Map(map)
+ , m_numPerFrame(numPerFrame)
+ {
+ }
+
+ template<typename T>
+ OFBool operator()(DPMParametricMapIOD::Frames<T>& frames)
+ {
+ dumpDataType(frames);
+ for (unsigned long f = 0; f < m_Map->getNumberOfFrames(); f++)
+ {
+ COUT << "Dumping info of frame #" << f << ":" << OFendl;
+ FGInterface& fg = m_Map->getFunctionalGroups();
+ dumpRWVM(f, fg);
+ COUT << "Dumping data for frame #" << f << ": " << OFendl;
+ T* frame = frames.getFrame(f);
+ for (unsigned long p = 0; p < m_numPerFrame; p++)
+ {
+ COUT << frame[p] << " ";
+ }
+ COUT << OFendl << OFendl;
+ }
+ return 0;
+ }
+
+ OFBool operator()(OFCondition& cond)
+ {
+ // Avoid compiler warning
+ (void)cond;
+ CERR << "Type of data samples not supported" << OFendl;
+ return OFFalse;
+ }
+
+ OFBool dumpHeader(DPMParametricMapIOD::Frames<Float32>& frames)
+ {
+ // Avoid compiler warning
+ (void)frames;
+ COUT << "File has 32 Bit float data" << OFendl;
+ return OFFalse;
+ }
+
+ OFBool dumpHeader(DPMParametricMapIOD::Frames<Uint16>& frames)
+ {
+ // Avoid compiler warning
+ (void)frames;
+ COUT << "File has 16 Bit unsigned integer data" << OFendl;
+ return OFFalse;
+ }
+
+ OFBool dumpHeader(DPMParametricMapIOD::Frames<Sint16>& frames)
+ {
+ // Avoid compiler warning
+ (void)frames;
+ COUT << "File has 16 Bit signed integer data" << OFendl;
+ return OFFalse;
+ }
+
+ OFBool dumpHeader(DPMParametricMapIOD::Frames<Float64>& frames)
+ {
+ // Avoid compiler warning
+ (void)frames;
+ COUT << "File has 64 Bit float data" << OFendl;
+ return OFTrue;
+ }
+
+ template<typename T>
+ OFBool dumpDataType(DPMParametricMapIOD::Frames<T>& frames)
+ {
+ // Avoid compiler warning
+ (void)frames;
+ CERR << "Type of data samples not supported" << OFendl;
+ return OFFalse;
+ }
+
+ DPMParametricMapIOD* m_Map;
+ unsigned long m_numPerFrame;
+
+};
+
+
+static void dumpGeneral(DPMParametricMapIOD& map)
+{
+ OFString patName, patID, studyUID, studyDate, seriesUID, modality, sopUID;
+ map.getPatient().getPatientName(patName);
+ map.getPatient().getPatientID(patID);
+ map.getStudy().getStudyInstanceUID(studyUID);
+ map.getStudy().getStudyDate(studyDate);
+ map.getSeries().getSeriesInstanceUID(seriesUID);
+ map.getSeries().getModality(modality);
+ map.getSOPCommon().getSOPInstanceUID(sopUID);
+ COUT << "Patient Name : " << patName << OFendl;
+ COUT << "Patient ID : " << patID << OFendl;
+ COUT << "Study Instance UID : " << studyUID << OFendl;
+ COUT << "Study Date : " << studyDate << OFendl;
+ COUT << "Series Instance UID: " << seriesUID << OFendl;
+ COUT << "SOP Instance UID : " << sopUID << OFendl;
+ COUT << "---------------------------------------------------------------" << OFendl;
+ OFBool isPerFrame;
+ map.getFunctionalGroups().get(0, DcmFGTypes::EFG_REALWORLDVALUEMAPPING, isPerFrame);
+ if (isPerFrame)
+ {
+ COUT << "Real World Value Mapping: Defined per-frame" << OFendl;
+ }
+ else
+ {
+ COUT << "Real World Value Mapping: Defined shared (i.e. single definition for all frames):" << OFendl;
+ }
+ COUT << "---------------------------------------------------------------" << OFendl;
+}
+
+
+int main (int argc, char* argv[])
+{
+ // OFLog::configure(OFLogger::DEBUG_LOG_LEVEL);
+ OFString inputFile;
+ if (argc < 2)
+ {
+ CERR << "Usage: dump_pmp <input-file>" << std::endl;
+ return 1;
+ }
+ else
+ {
+ inputFile = argv[1];
+ if (!OFStandard::fileExists(inputFile))
+ {
+ CERR << "Input file " << inputFile << " does not exist " << OFendl;
+ return 1;
+ }
+ }
+
+ OFvariant<OFCondition,DPMParametricMapIOD*> result = DPMParametricMapIOD::loadFile(inputFile);
+ if (OFget<DPMParametricMapIOD*>(&result))
+ {
+ DPMParametricMapIOD* map = *OFget<DPMParametricMapIOD*>(&result);
+ dumpGeneral(*map);
+ COUT << "Dumping #" << map->getNumberOfFrames() << " frames of file " << inputFile << OFendl;
+ Uint16 rows, cols = 0;
+ map->getRows(rows);
+ map->getColumns(cols);
+ unsigned long numPerFrame = rows * cols;
+ DPMParametricMapIOD::FramesType frames = map->getFrames();
+ OFvisit<OFBool>(DumpFramesVisitor(map, numPerFrame), frames);
+ }
+ else
+ {
+ CERR << "Could not load parametric map: " << (*OFget<OFCondition>(&result)).text() << OFendl;
+ exit(1);
+ }
+ exit(0);
+}
+
+\endcode
+
+
+\subsection example_create Creation of Parametric Maps
+
+The Parametric Map class uses a template in order to instantiate the correct
+pixel data type internally, and to offer a dedicated API for that type. Allowed
+types are Uint16, Sint16, Float32 and Float64. The example below demonstrates
+that the API use is generally the same for all types.
+
+The procedure in the example (and most of it applies for the general case) is as
+follows:
+
+\li The main() routine calls test_pmap() four times, each time using a different
+Image Pixel Module as template parameter which makes sure that the right pixel
+data type is used within the created Parametric Map.
+\li test_pmap() demonstrates the overall steps to create the map:
+\li Create a new Parametric Map by calling DPMParametricMapIOD::create()
+(via create_pmap()), and then
+\li add shared functional groups,
+\li add dimensions,
+\li and add frames with the related per-frame functional groups to the object.
+\li Finally, general data regarding Patient and Study is set.
+\li Note that the order of these steps in test_pmap() does not matter.
+
+
+Per default, DPMParametricMapIOD::create() creates a new DICOM instance, within
+a brand-new DICOM Series that belongs to a brand-new DICOM Study. All minimal
+information for Patient, Study and Series will be set (e.g. Study, Series and
+SOP Instance UID as well as other information that is handed over to the
+create() call, like Series Number). Patient Name and ID are left empty per
+default.
+
+Of course, often you might want to put the new instance into an existing Series
+instead, or place the brand-new Series into an existing Study or at least assign
+it to an existing Patient. The easiest way to to do that is to use the call
+import() that imports Patient or even Study, Series and Frame of Reference
+information from an existing file, i.e. place it under an existing Patient,
+Study and/or Series.
+
+When adding information to the Parametric Map using the public API, some basic
+checks are usually performed on the data. Finally, when calling saveFile(), some
+further checks take place, e.g. validating the structure of the functional
+groups or making sure that all required element values are set.
+
+\code
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+
+#include "dcmtk/ofstd/oftest.h"
+#include "dcmtk/dcmiod/iodutil.h"
+#include "dcmtk/dcmpmap/dpmparametricmapiod.h"
+#include "dcmtk/dcmfg/fgpixmsr.h"
+#include "dcmtk/dcmfg/fgplanpo.h"
+#include "dcmtk/dcmfg/fgplanor.h"
+#include "dcmtk/dcmfg/fgfracon.h"
+#include "dcmtk/dcmfg/fgframeanatomy.h"
+#include "dcmtk/dcmfg/fgidentpixeltransform.h"
+#include "dcmtk/dcmfg/fgframevoilut.h"
+#include "dcmtk/dcmfg/fgrealworldvaluemapping.h"
+#include "dcmtk/dcmfg/fgparametricmapframetype.h"
+
+const size_t NUM_FRAMES = 10;
+const Uint16 ROWS = 10;
+const Uint16 COLS = 10;
+const unsigned long NUM_VALUES_PER_FRAME = ROWS * COLS;
+
+
+// Set Patient and Study example data
+static void setGenericData(DPMParametricMapIOD& map)
+{
+ map.getPatient().setPatientName("Onken^Michael");
+ map.getPatient().setPatientID("007");
+ map.getStudy().setStudyDate("20160721");
+ map.getStudy().setStudyTime("111200");
+ map.getStudy().setStudyID("4711");
+}
+
+
+// Create Parametric Map
+template<typename ImagePixel>
+static OFvariant<OFCondition,DPMParametricMapIOD> create_pmap()
+{
+ return DPMParametricMapIOD::create<ImagePixel>
+ (
+ "MR", // Modality
+ "1", // Series Number
+ "1", // Instance Number
+ ROWS,
+ COLS,
+ IODEnhGeneralEquipmentModule::EquipmentInfo("Open Connections GmbH", "make_pmp", "SN_0815", "0.1"),
+ ContentIdentificationMacro("1", "PARAMAP_LABEL", "Example description from test program", "Onken^Michael"),
+ "VOLUME", // Image Flavor
+ "MTT", // Derived Pixel Contrast
+ DPMTypes::CQ_RESEARCH // Content Qualification
+ );
+}
+
+
+// Add those functional groups that are common for all frames
+static OFCondition addSharedFunctionalGroups(DPMParametricMapIOD& map)
+{
+ FGPixelMeasures pixelMeasures;
+ pixelMeasures.setPixelSpacing("1\\1");
+ pixelMeasures.setSliceThickness("0.1");
+ pixelMeasures.setSpacingBetweenSlices("0.1");
+ FGPlaneOrientationPatient planeOrientPatientFG;
+ planeOrientPatientFG.setImageOrientationPatient("1", "0", "0", "0", "1", "0");
+ FGFrameAnatomy frameAnaFG;
+ frameAnaFG.setLaterality(FGFrameAnatomy::LATERALITY_UNPAIRED);
+ frameAnaFG.getAnatomy().getAnatomicRegion().set("T-A0100", "SRT", "Brain");
+ FGIdentityPixelValueTransformation idTransFG;
+ FGParametricMapFrameType frameTypeFG;
+ frameTypeFG.setFrameType("DERIVED\\PRIMARY\\VOLUME\\MTT");
+
+ // Add groups to Parametric Map
+ OFCondition result;
+ if ((result = map.addForAllFrames(pixelMeasures)).good())
+ if ((result = map.addForAllFrames(planeOrientPatientFG)).good())
+ if ((result = map.addForAllFrames(frameAnaFG)).good())
+ if ((result = map.addForAllFrames(idTransFG)).good())
+ result = map.addForAllFrames(frameTypeFG);
+
+ return result;
+}
+
+
+// Add a single dimension for demonstration purposes based on "Image Position Patient"
+static OFCondition addDimensions(DPMParametricMapIOD& map)
+{
+ IODMultiframeDimensionModule& mod = map.getIODMultiframeDimensionModule();
+ OFString dimUID = DcmIODUtil::createUID(0);
+ OFCondition result = mod.addDimensionIndex(DCM_ImagePositionPatient, dimUID, DCM_RealWorldValueMappingSequence, "Frame position");
+ return result;
+}
+
+
+// Add one frame to parametric map. Frame number is used to compute some
+// varying example data values differing from frame to frame
+template <typename PixelType>
+static OFCondition addFrame(DPMParametricMapIOD& map,
+ const unsigned long frameNo)
+{
+ // Create example data
+
+ OFVector<PixelType> data(NUM_VALUES_PER_FRAME);
+ for (size_t n=0; n < data.size(); ++n)
+ {
+ data[n] = (n*frameNo+n) + (0.1 * (frameNo % 10));
+ }
+
+ Uint16 rows, cols;
+ OFCondition cond = map.getImagePixel().getRows(rows);
+ cond = map.getImagePixel().getColumns(cols);
+
+ // Create functional groups
+ OFVector<FGBase*> groups;
+ OFunique_ptr<FGPlanePosPatient> fgPlanePos(new FGPlanePosPatient);
+ OFunique_ptr<FGFrameContent > fgFracon(new FGFrameContent);
+ OFunique_ptr<FGRealWorldValueMapping> fgRVWM(new FGRealWorldValueMapping());
+ FGRealWorldValueMapping::RWVMItem* rvwmItemSimple = new FGRealWorldValueMapping::RWVMItem();
+ if (!fgPlanePos || !fgFracon || !fgRVWM || !rvwmItemSimple )
+ return EC_MemoryExhausted;
+
+ // Fill in functional group values
+
+ // Real World Value Mapping
+ rvwmItemSimple->setRealWorldValueSlope(10);
+ rvwmItemSimple->setRealWorldValueIntercept(0);
+ rvwmItemSimple->setDoubleFloatRealWorldValueFirstValueMapped(0.12345);
+ rvwmItemSimple->setDoubleFloatRealWorldValueLastValueMapped(98.7654);
+ rvwmItemSimple->getMeasurementUnitsCode().set("{counts}/s", "UCUM", "Counts per second");
+ rvwmItemSimple->setLUTExplanation("We are mapping trash to junk.");
+ rvwmItemSimple->setLUTLabel("Just testing");
+ CodeSequenceMacro* qCodeName = new CodeSequenceMacro("G-C1C6", "SRT", "Quantity");
+ CodeSequenceMacro* qSpec = new CodeSequenceMacro("110805", "SRT", "T2 Weighted MR Signal Intensity");
+ ContentItemMacro* quantity = new ContentItemMacro;
+ if (!quantity || !qSpec || !quantity)
+ return EC_MemoryExhausted;
+ quantity->getEntireConceptNameCodeSequence().push_back(qCodeName);
+ quantity->getEntireConceptCodeSequence().push_back(qSpec);
+ rvwmItemSimple->getEntireQuantityDefinitionSequence().push_back(quantity);
+ quantity->setValueType(ContentItemMacro::VT_CODE);
+ fgRVWM->getRealWorldValueMapping().push_back(rvwmItemSimple);
+
+ // Plane Position
+ OFStringStream ss;
+ ss << frameNo;
+ OFSTRINGSTREAM_GETOFSTRING(ss, framestr) // convert number to string
+ fgPlanePos->setImagePositionPatient("0", "0", framestr);
+
+ // Frame Content
+ OFCondition result = fgFracon->setDimensionIndexValues(frameNo+1 /* value within dimension */, 0 /* first dimension */);
+
+ // Add frame wit related groups
+ if (result.good())
+ {
+ // Add frame
+ groups.push_back(fgPlanePos.get());
+ groups.push_back(fgFracon.get());
+ groups.push_back(fgRVWM.get());
+ groups.push_back(fgPlanePos.get());
+ DPMParametricMapIOD::FramesType frames = map.getFrames();
+ result = OFget<DPMParametricMapIOD::Frames<PixelType> >(&frames)->addFrame(&*data.begin(), NUM_VALUES_PER_FRAME, groups);
+ }
+
+ return result;
+}
+
+
+// Main routine that creates Parametric Maps
+template<typename ImagePixel>
+static OFCondition test_pmap(const OFString& saveDestination)
+{
+ OFvariant<OFCondition,DPMParametricMapIOD> obj = create_pmap<ImagePixel>();
+ if (OFCondition* pCondition = OFget<OFCondition>(&obj))
+ return *pCondition;
+
+ DPMParametricMapIOD& map = *OFget<DPMParametricMapIOD>(&obj);
+
+ OFCondition result;
+ if ((result = addSharedFunctionalGroups(map)).good())
+ if ((result = addDimensions(map)).good())
+ {
+ // Add frames (parametric map data), and per-frame functional groups
+ for (unsigned long f = 0; result.good() && (f < NUM_FRAMES); f++)
+ result = addFrame<OFTypename ImagePixel::value_type>(map, f);
+ }
+
+ // Set some generic data (keep dciodvfy happy on DICOMDIR warnings)
+ if (result.good())
+ {
+ setGenericData(map);
+ }
+
+ // Save
+ if (result.good())
+ {
+ return map.saveFile(saveDestination.c_str());
+ }
+ else
+ {
+ return result;
+ }
+}
+
+
+int main (int argc, char* argv[])
+{
+ OFString outputDir;
+ if (argc < 2)
+ {
+ CERR << "Usage: make_pmp <output-dir>" << std::endl;
+ return 1;
+ }
+ else
+ {
+ outputDir = argv[1];
+ if (!OFStandard::dirExists(outputDir))
+ {
+ CERR << "Output directory " << outputDir << " does not exist " << OFendl;
+ return 1;
+ }
+ }
+
+ //OFLog::configure(OFLogger::DEBUG_LOG_LEVEL);
+
+ // Test all possible parametric map types (signed and unsigned integer, floating point
+ // and double floating point)
+
+ test_pmap<IODImagePixelModule<Uint16> >(outputDir + "/uint_paramap.dcm");
+ test_pmap<IODImagePixelModule<Sint16> >(outputDir + "/sint_paramap.dcm");
+ test_pmap<IODFloatingPointImagePixelModule>(outputDir + "/float_paramap.dcm");
+ test_pmap<IODDoubleFloatingPointImagePixelModule>(outputDir + "/double_paramap.dcm");
+
+ return 0;
+}
+
+\endcode
+
+*/
--- /dev/null
+#
+# Makefile for dcmpmap/etc
+#
+
+@SET_MAKE@
+
+SHELL = /bin/sh
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+configdir = @top_srcdir@/@configdir@
+
+include $(configdir)/@common_makefile@
+
+
+all:
+
+install:
+
+clean:
+ rm -f $(TRASH)
+
+distclean:
+ rm -f $(DISTTRASH)
--- /dev/null
+# declare installation files
+INSTALL(DIRECTORY dcmtk/dcmpmap DESTINATION ${DCMTK_INSTALL_INCDIR}/dcmtk COMPONENT include FILES_MATCHING PATTERN "*.h" PATTERN "CVS" EXCLUDE)
--- /dev/null
+#
+# Makefile for dcmpmap/include
+#
+
+@SET_MAKE@
+
+SHELL = /bin/sh
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+configdir = @top_srcdir@/@configdir@
+
+include $(configdir)/@common_makefile@
+
+
+all:
+
+install:
+ $(configdir)/mkinstalldirs $(DESTDIR)$(includedir)/dcmtk/dcmpmap
+ for file in dcmtk/dcmpmap/*.h ; do \
+ $(INSTALL_DATA) $$file $(DESTDIR)$(includedir)/dcmtk/dcmpmap ;\
+ done
+
+clean:
+ rm -f $(TRASH)
+
+distclean:
+ rm -f $(DISTTRASH)
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Contains preprocessor definitions
+ *
+ */
+
+
+#ifndef DPMDEF_H
+#define DPMDEF_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/ofstd/ofdefine.h"
+
+// definitions for DLL/shared library exports
+
+#ifdef dcmpmap_EXPORTS
+#define DCMTK_DCMPMAP_EXPORT DCMTK_DECL_EXPORT
+#else
+#define DCMTK_DCMPMAP_EXPORT DCMTK_DECL_IMPORT
+#endif
+
+#endif // DPMDEF_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Parametric Map Image Module
+ *
+ */
+
+#ifndef DPMMODPARAMETRICMAPIMAGE_H
+#define DPMMODPARAMETRICMAPIMAGE_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/ofstd/ofmem.h"
+#include "dcmtk/dcmiod/iodrules.h"
+#include "dcmtk/dcmiod/modbase.h"
+#include "dcmtk/dcmpmap/dpmdef.h"
+
+/** Class representing the Parametric Map Image Module:
+ *
+ * ImageType: (CS, 2-n, 1)
+ * SamplesPerPixel: (US, 1, 1)
+ * PhotometricInterpretation: (CS, 1, 1)
+ * BitsAllocated: (US, 1, 1)
+ * BitsStored: (US, 1, 1C)
+ * HighBit: (US, 1, 1C)
+ * PresentationLUTShape: (CS, 1, 1)
+ * LossyImageCompression: (CS, 1, 1)
+ * LossyImageCompressionRatio: (DS, 1-n, 1C)
+ * LossyImageCompressionMethod: (CS, 1-n, 1C)
+ * BurnedInAnnotation: (CS, 1, 1)
+ * RecognizableVisualFeatures: (CS, 1, 1)
+ * ContentQualification: (CS, 1, 1)
+ */
+class DCMTK_DCMPMAP_EXPORT DPMParametricMapImageModule : public IODModule
+{
+public:
+ /** Constructor
+ * @param item The item to be used for data storage. If NULL, the
+ * class creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ */
+ DPMParametricMapImageModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules);
+
+ /** Constructor
+ */
+ DPMParametricMapImageModule();
+
+ /** Destructor
+ */
+ virtual ~DPMParametricMapImageModule();
+
+ /** Resets rules to their original values
+ */
+ virtual void resetRules();
+
+ /** Get name of module ("DPMParametricMapImageModule")
+ * @return Name of the module ("DPMParametricMapImageModule")
+ */
+ virtual OFString getName() const;
+
+ /** Read attributes from given item into this class
+ * @param source The source to read from
+ * @param clearOldData If OFTrue, old data is cleared before reading. Otherwise
+ * old data is overwritten (or amended)
+ * @result EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& source,
+ const OFBool clearOldData = OFTrue);
+
+ /** Write attributes from this class into given item
+ * @param destination The item to write to
+ * @result EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& destination);
+
+ /** Get Image Type
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getImageType(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Samples Per Pixel
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSamplesPerPixel(Uint16 &value,
+ const signed long pos = 0) const;
+
+ /** Get Photometric Interpretation
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPhotometricInterpretation(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Bits Allocated
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getBitsAllocated(Uint16 &value,
+ const signed long pos = 0) const;
+
+ /** Get Bits Stored
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getBitsStored(Uint16 &value,
+ const signed long pos = 0) const;
+
+ /** Get High Bit
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getHighBit(Uint16 &value,
+ const signed long pos = 0) const;
+
+ /** Get Presentation LUT Shape
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPresentationLUTShape(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Lossy Image Compression
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLossyImageCompression(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Lossy Image Compression Ratio
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLossyImageCompressionRatio(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Lossy Image Compression Method
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLossyImageCompressionMethod(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Burned In Annotation
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getBurnedInAnnotation(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Recognizable Visual Features
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getRecognizableVisualFeatures(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Content Qualification
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getContentQualification(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Set Image Type
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (2-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setImageType(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Samples Per Pixel
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (US) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSamplesPerPixel(const Uint16 &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Photometric Interpretation
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPhotometricInterpretation(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Bits Allocated
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (US) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setBitsAllocated(const Uint16 &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Bits Stored
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (US) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setBitsStored(const Uint16 &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set High Bit
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (US) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setHighBit(const Uint16 &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Presentation LUT Shape
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPresentationLUTShape(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Lossy Image Compression
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLossyImageCompression(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Lossy Image Compression Ratio
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (DS) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLossyImageCompressionRatio(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Lossy Image Compression Method
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1-n) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLossyImageCompressionMethod(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Burned In Annotation
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setBurnedInAnnotation(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Recognizable Visual Features
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setRecognizableVisualFeatures(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set ContentQualification
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setContentQualification(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+private:
+ /// The name of this module ("DPMParametricMapImageModule")
+ static const OFString m_ModuleName;
+};
+
+#endif // DPMMODPARAMETRICMAPIMAGE_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Parametric Map Series Module
+ *
+ */
+
+#ifndef DPMMODPARAMETRICMAPSERIES_H
+#define DPMMODPARAMETRICMAPSERIES_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/ofstd/ofmem.h"
+#include "dcmtk/dcmiod/iodrules.h"
+#include "dcmtk/dcmiod/modbase.h"
+#include "dcmtk/dcmpmap/dpmdef.h"
+#include "dcmtk/dcmiod/iodmacro.h"
+
+/** Class representing the Parametric Map Series Module:
+ *
+ * Modality: (CS, 1, 1)
+ * SeriesNumber: (IS, 1, 1)
+ * ReferencedPerformedProcedureStepSequence: (SQ, 1, 1C)
+ */
+class DCMTK_DCMPMAP_EXPORT DPMParametricMapSeriesModule : public IODModule
+{
+public:
+ /** Constructor
+ * @param item The item to be used for data storage. If NULL, the
+ * class creates an empty data container.
+ * @param rules The rule set for this class. If NULL, the class creates
+ * one from scratch and adds its values.
+ */
+ DPMParametricMapSeriesModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules);
+
+ /** Constructor
+ */
+ DPMParametricMapSeriesModule();
+
+ /** Destructor
+ */
+ virtual ~DPMParametricMapSeriesModule();
+
+ /** Resets rules to their original values
+ */
+ virtual void resetRules();
+
+ /** Get name of module ("DPMParametricMapSeriesModule")
+ * @return Name of the module ("DPMParametricMapSeriesModule")
+ */
+ virtual OFString getName() const;
+
+ /** Read attributes from given item into this class
+ * @param source The source to read from
+ * @param clearOldData If OFTrue, old data is cleared before reading. Otherwise
+ * old data is overwritten (or amended)
+ * @result EC_Normal if reading was successful, error otherwise
+ */
+ virtual OFCondition read(DcmItem& source,
+ const OFBool clearOldData = OFTrue);
+
+ /** Write attributes from this class into given item
+ * @param destination The item to write to
+ * @result EC_Normal if writing was successful, error otherwise
+ */
+ virtual OFCondition write(DcmItem& destination);
+
+ /** Get Modality
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getModality(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get Series Number
+ * @param value Reference to variable in which the value should be stored
+ * @param pos Index of the value to get (0..vm-1), -1 for all components
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSeriesNumber(OFString &value,
+ const signed long pos = 0) const;
+
+ /** Get reference to the Referenced Performed Procedure Step Sequence
+ * @return a reference to the Referenced Performed Procedure Step Sequence
+ */
+ virtual SOPInstanceReferenceMacro* getReferencedPerformedProcedureStepSequence();
+
+ /** Get a reference to the entire Referenced Performed Procedure Step Sequence, including items
+ * exceeding the value multiplicity restriction of "1"
+ * @return a reference to the entire Referenced Performed Procedure Step Sequence
+ */
+ virtual OFVector<SOPInstanceReferenceMacro>& getEntireReferencedPerformedProcedureStepSequence();
+
+ /** Set Modality
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setModality(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+ /** Set Series Number
+ * @param value Value to be set (single value only) or "" for no value
+ * @param checkValue Check 'value' for conformance with VR (IS) and VM (1) if enabled
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSeriesNumber(const OFString &value,
+ const OFBool checkValue = OFTrue);
+
+private:
+ /// The name of this module ("DPMParametricMapSeriesModule")
+ static const OFString m_ModuleName;
+
+ /// ReferencedPerformedProcedureStepSequence
+ OFVector<SOPInstanceReferenceMacro> m_ReferencedPerformedProcedureStepSequence;
+};
+
+#endif // DPMMODPARAMETRICMAPSERIES_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Generated base class representing the Parametric Map IOD
+ *
+ */
+
+#ifndef DPMPARAMETRICMAPBASE_H
+#define DPMPARAMETRICMAPBASE_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmfg/fginterface.h"
+#include "dcmtk/dcmfg/fgderimg.h"
+#include "dcmtk/dcmfg/fgfracon.h"
+#include "dcmtk/dcmfg/fgframeanatomy.h"
+#include "dcmtk/dcmfg/fgframevoilut.h"
+#include "dcmtk/dcmfg/fgidentpixeltransform.h"
+#include "dcmtk/dcmfg/fgparametricmapframetype.h"
+#include "dcmtk/dcmfg/fgpixmsr.h"
+#include "dcmtk/dcmfg/fgplanor.h"
+#include "dcmtk/dcmfg/fgplanpo.h"
+#include "dcmtk/dcmfg/fgrealworldvaluemapping.h"
+#include "dcmtk/dcmiod/iodimage.h"
+#include "dcmtk/dcmiod/modacquisitioncontext.h"
+#include "dcmtk/dcmiod/modcommoninstanceref.h"
+#include "dcmtk/dcmiod/modenhequipment.h"
+#include "dcmtk/dcmiod/modequipment.h"
+#include "dcmtk/dcmiod/modgeneralimage.h"
+#include "dcmtk/dcmiod/modgeneralseries.h"
+#include "dcmtk/dcmiod/modgeneralstudy.h"
+#include "dcmtk/dcmiod/modmultiframedimension.h"
+#include "dcmtk/dcmiod/modmultiframefg.h"
+#include "dcmtk/dcmiod/modpatient.h"
+#include "dcmtk/dcmiod/modpatientstudy.h"
+#include "dcmtk/dcmiod/modsopcommon.h"
+#include "dcmtk/dcmiod/modimagepixel.h"
+#include "dcmtk/dcmiod/modfloatingpointimagepixel.h"
+#include "dcmtk/dcmpmap/dpmmodparametricmapimage.h"
+#include "dcmtk/dcmpmap/dpmmodparametricmapseries.h"
+#include "dcmtk/dcmpmap/dpmdef.h"
+
+/** Class for managing the Parametric Map IOD attributes. Template parameter defines the type of pixel data
+ * to use: Unsigned or signed 16 bit integer, or 32 bit floating point, or 64 bit floating point data.
+ */
+class DCMTK_DCMPMAP_EXPORT DPMParametricMapBase
+: public DcmIODImage
+<
+ IODImagePixelModule<Uint16>,
+ IODImagePixelModule<Sint16>,
+ IODFloatingPointImagePixelModule,
+ IODDoubleFloatingPointImagePixelModule
+>
+{
+
+public:
+
+ /** Virtual Destructor
+ */
+ virtual ~DPMParametricMapBase();
+
+ // -------------------- loading and saving ---------------------
+
+ /** Save current object to given filename
+ * @param filename The file to write to
+ * @param writeXfer The transfer syntax to be used
+ * @return EC_Normal if writing was successful, error otherwise.
+ */
+ virtual OFCondition saveFile(const OFString& filename,
+ const E_TransferSyntax writeXfer = EXS_LittleEndianExplicit);
+
+ /** Write current object to given item
+ * @param dataset The item to write to
+ * @return EC_Normal if writing was successful, error otherwise.
+ */
+ OFCondition writeDataset(DcmItem& dataset);
+
+ /** Perform some basic checking. This method is also invoked when
+ * writing the object to a DICOM dataset or file.
+ * @return OFTrue, if no errors were found, OFFalse otherwise.
+ */
+ virtual OFBool check();
+
+ /** Get access to functional groups. This is meant for reading data from
+ * functional groups that are not actively managed, i.e.\ made accessible by
+ * DcmSegmentation. In rare cases, however, it makes sense to access it
+ * for writing too, e.g.\ in order to add Stacks; use with care!
+ * @return Reference to the functional groups
+ */
+ virtual FGInterface& getFunctionalGroups();
+
+ /** Get Patient Module
+ * @return a reference to the IOD Patient Module
+ */
+ virtual IODPatientModule& getIODPatientModule();
+
+ /** Get General Study Module
+ * @return a reference to the IOD General Study Module
+ */
+ virtual IODGeneralStudyModule& getIODGeneralStudyModule();
+
+ /** Get Patient Study Module
+ * @return a reference to the IOD Patient Study Module
+ */
+ virtual IODPatientStudyModule& getIODPatientStudyModule();
+
+ /** Get General Series Module
+ * @return a reference to the IOD General Series Module
+ */
+ virtual IODGeneralSeriesModule& getIODGeneralSeriesModule();
+
+ /** Get Parametric Map Series Module
+ * @return a reference to the Parametric Map Series Module
+ */
+ virtual DPMParametricMapSeriesModule& getDPMParametricMapSeriesModule();
+
+ /** Get General Equipment Module
+ * @return a reference to the General Equipment Module
+ */
+ virtual IODGeneralEquipmentModule& getIODGeneralEquipmentModule();
+
+ /** Get Enhanced General Equipment Module
+ * @return a reference to the Enhanced General Equipment Module
+ */
+ virtual IODEnhGeneralEquipmentModule& getIODEnhGeneralEquipmentModule();
+
+ /** Get General Image Module
+ * @return a reference to the General Image Module
+ */
+ virtual IODGeneralImageModule& getIODGeneralImageModule();
+
+ /** Get Parametric Map Image Module
+ * @return a reference to the Parametric Map Image Module
+ */
+ virtual DPMParametricMapImageModule& getDPMParametricMapImageModule();
+
+ /** Get Multi-frame Functional Groups Module
+ * @return a reference to the Multi-frame Functional Groups Module
+ */
+ virtual IODMultiFrameFGModule& getIODMultiFrameFGModule();
+
+ /** Get Multi-frame Dimension Module
+ * @return a reference to the Multi-frame Dimension Module
+ */
+ virtual IODMultiframeDimensionModule& getIODMultiframeDimensionModule();
+
+ /** Get Acquisition Context Module
+ * @return a reference to the Acquisition Context Module
+ */
+ virtual IODAcquisitionContextModule& getIODAcquisitionContextModule();
+
+ /** Get Common Instance Reference Module
+ * @return a reference to the Common Instance Reference Module
+ */
+ virtual IODCommonInstanceReferenceModule& getIODCommonInstanceReferenceModule();
+
+ /** Get SOP Common Module
+ * @return a reference to the SOP Common Module
+ */
+ virtual IODSOPCommonModule& getIODSOPCommonModule();
+
+protected:
+
+ /** Constructor; not public since object should be create via factory
+ * method in derived class.
+ */
+ DPMParametricMapBase();
+
+ /** Constructor; not public since object should be create via factory
+ * method in derived class.
+ */
+ template<typename ImagePixel>
+ DPMParametricMapBase(OFin_place_type_t(ImagePixel));
+
+ /** Read Parametric Map attributes (all those handled by this class)
+ * from given item. Reads attributes from base class DcmIODCommon before.
+ * The current content is deleted even if the reading process fails.
+ * If the log stream is set and valid the reason for any error might be
+ * obtained from the error/warning output.
+ * @param dataset Reference to DICOM dataset from which the document
+ * should be read
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition read(DcmItem &dataset);
+
+ /** Write current Parametric Map's attributes to DICOM dataset. Also
+ * writes attributes of base class DcmIODCommon afterwards.
+ * @param dataset Reference to DICOM dataset to which the current document
+ * should be written. The dataset is not cleared before writing
+ * to it!
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition write(DcmItem &dataset);
+
+ /** Clear (removes) all attributes handled by the modules of this IOD.
+ * IOD Rules are not reset.
+ */
+ virtual void clearData();
+
+ /** Loads file
+ * @param dcmff The file format to load into
+ * @param filename The filename of the file to load
+ * @param dset Pointer to dataset after loading
+ * @return EC_Normal if loading was successful, error otherwise
+ */
+ static OFCondition loadFile(DcmFileFormat& dcmff,
+ const OFString& filename,
+ DcmDataset*& dset);
+
+ /// Multi-frame Functional Groups high level interface
+ FGInterface m_FGInterface;
+
+ /// Parametric Map Series Module
+ DPMParametricMapSeriesModule m_DPMParametricMapSeriesModule;
+
+ /// Enhanced General Equipment Module
+ IODEnhGeneralEquipmentModule m_IODEnhGeneralEquipmentModule;
+
+ /// Parametric Map Image Module
+ DPMParametricMapImageModule m_DPMParametricMapImageModule;
+
+ /// Multi-frame Functional Groups Module
+ IODMultiFrameFGModule m_IODMultiFrameFGModule;
+
+ /// Multi-frame Dimension Module
+ IODMultiframeDimensionModule m_IODMultiframeDimensionModule;
+
+ /// Acquisition Context Module
+ IODAcquisitionContextModule m_IODAcquisitionContextModule;
+
+ /// Common Instance Reference Module
+ IODCommonInstanceReferenceModule m_IODCommonInstanceReferenceModule;
+
+};
+
+#endif // DPMPARAMETRICMAPBASE_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Class representing the Parametric Map IOD
+ *
+ */
+
+#ifndef DPMPARAMETRICMAPIOD_H
+#define DPMPARAMETRICMAPIOD_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmiod/modimagepixelbase.h"
+#include "dcmtk/dcmpmap/dpmparametricmapbase.h"
+#include "dcmtk/dcmpmap/dpmtypes.h"
+
+
+/** Class for managing the Parametric Map IOD attributes.
+ */
+class DCMTK_DCMPMAP_EXPORT DPMParametricMapIOD : public DPMParametricMapBase
+{
+public:
+
+ /** Inner class that offers typed interface to bulk data.
+ */
+ template<typename PixelType>
+ class DCMTK_DCMPMAP_EXPORT Frames
+ {
+ public:
+
+ /// Binary pixel type
+ typedef PixelType pixel_type;
+
+ /** Method that adds a frame to the Parametric Map using the underlying
+ * binary data type.
+ * @param data The frame data
+ * @param numPixels The number of pixels (rows * columns) of the frame
+ * @param perFrameInformation The per-frame functional groups applying for
+ * @return EC_Normal if adding was successful, error otherwise
+ */
+ OFCondition addFrame(PixelType* data,
+ const size_t numPixels,
+ const OFVector<FGBase*>& perFrameInformation);
+
+ /** Type-specific getFrame() method that returns Float32, Uint16, or whatever
+ * is used in this Parametric Map.
+ * @return Pointer to typed pixel data
+ */
+ PixelType* getFrame(const size_t frameNumber);
+
+ private:
+
+ // Make sure the Parametric Map object (and no one else) can use the constructor below.
+ friend class DPMParametricMapIOD;
+
+ /** Create Frames object in DPMParametricMapIOD (see friend declaration above)
+ * @param map The map object that will contain the frames
+ */
+ Frames(DPMParametricMapIOD& map);
+
+ /// Reference to Parametric Map object in order to access its pixel data
+ DPMParametricMapIOD& m_Map;
+ };
+
+ /** Frames can contain Uint16, Sint16, Float32 or Float64 data, or nothing
+ * at all (in that case OFCondition denotes a corresponding error)
+ */
+ typedef OFvariant
+ <
+ OFCondition,
+ Frames<Uint16>,
+ Frames<Sint16>,
+ Frames<Float32>,
+ Frames<Float64>
+ > FramesType;
+
+ /** Virtual Destructor, frees memory.
+ */
+ virtual ~DPMParametricMapIOD();
+
+ /** Create new Parametric Map object. Takes the minimum of required parameters.
+ * Afterwards, additional setters() can be used to set optional data. Frames
+ * and their related per-frame functional groups should be added using addFrame().
+ * Shared functional groups should be added using addForAllFrames().
+ * @param modality The modality of this Parametric Map (series level attribute).
+ * A list of Defined Terms can be found in the standard. Very often
+ * "MR" is the right choice. Only if a mix of different modalities has been
+ * use for creation "OT" should be used.
+ * @param seriesNumber A number identifying this series. If importPatientStudyFor()
+ * is called later in order to put this Parametric Map into an existing Series,
+ * the Series Number will be taken over from the existing series instead.
+ * @param instanceNumber A number identifying this image
+ * @param rows The number of rows of all frames of the Parametric Map
+ * @param columns The number of columns of all frames of the Parametric Map
+ * @param equipmentInfo Information about the equipment creating thing Parametric Map
+ * @param contentIdentification General information about this content
+ * @param imageFlavor 3rd value of attribute Image Type. See standard for list of
+ * applicable Defined Terms.
+ * @param derivedPixelContrast 4th value of attribute Image Type. See standard for list of
+ * applicable Defined Terms.
+ * @param contentQualification Either one of CQ_PRODUCT, CQ_RESEARCH, CQ_SERVICE
+ * @return Variant, either OFCondition with error code in case of error, Parametric
+ * Map object in case of success
+ */
+ template<typename ImagePixel>
+ static OFvariant<OFCondition,DPMParametricMapIOD> create(const OFString& modality,
+ const OFString& seriesNumber,
+ const OFString& instanceNumber,
+ const Uint16 rows,
+ const Uint16 columns,
+ const IODEnhGeneralEquipmentModule::EquipmentInfo& equipmentInfo,
+ const ContentIdentificationMacro& contentIdentification,
+ const OFString& imageFlavor,
+ const OFString& derivedPixelContrast,
+ const DPMTypes::ContentQualification& contentQualification);
+
+ /** Indicates whether or not the image contains sufficiently recognizable visual
+ * features to allow the image or a reconstruction from a set of images to
+ * identify the patient.
+ * @param yesOrNo Must be related "YES" or "NO" types
+ * @return EC_Normal if setting was successful, error otherwise
+ */
+
+ virtual OFCondition setRecognizableVisualFeatures(const DPMTypes::RecognizableVisibleFeatures yesOrNo);
+
+ /** Add a functional group for all frames
+ * @param group The group to be added as shared functional group
+ * @return EC_Normal if adding was successful, error otherwise
+ */
+ virtual OFCondition addForAllFrames(const FGBase& group);
+
+ // -------------------- loading and saving ---------------------
+
+ /** Load Parametric Map object from file
+ * @param filename The file to read from
+ * @return Variant, either the resulting Parametric Map object in case of success,
+ * an OFCondition error code otherwise
+ */
+ static OFvariant<OFCondition,DPMParametricMapIOD*> loadFile(const OFString& filename);
+
+ /** Load Parametric Map object from dataset object.
+ * @param dataset The dataset to read from
+ * @return Variant, either the resulting Parametric Map object in case of success,
+ * an OFCondition error code otherwise
+ */
+ static OFvariant<OFCondition,DPMParametricMapIOD*> loadDataset(DcmDataset& dataset);
+
+ /** Read Parametric Map attributes (all those handled by this class)
+ * from given item. Reads attributes from base class DcmIODCommon before.
+ * The current content is deleted even if the reading process fails.
+ * If the log stream is set and valid the reason for any error might be
+ * obtained from the error/warning output.
+ * @param dataset Reference to DICOM dataset from which the document
+ * should be read
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition read(DcmItem &dataset);
+
+ /** Write current Parametric Map's attributes to DICOM dataset.
+ * @param dataset Reference to DICOM dataset to which the current document
+ * should be written. The dataset is not cleared before writing
+ * to it!
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition write(DcmItem &dataset);
+
+ // -------------------- access ---------------------
+
+ /** Get Recognizable Visual Features
+ * @return Returns related YES or NO data type
+ */
+ virtual DPMTypes::RecognizableVisibleFeatures getRecognizableVisualFeatures();
+
+ /** Get Content Qualification
+ * @return Returns either one of CQ_PRODUCT, CQ_RESEARCH, CQ_SERVICE or CQ_UNKNOWN
+ */
+ virtual DPMTypes::ContentQualification getContentQualification();
+
+ /** Get number of rows
+ * @param rows The number of rows (output)
+ * @return EC_Normal if getting was successful, error otherwise
+ */
+ virtual OFCondition getRows(Uint16& rows);
+
+ /** Get number of cols
+ * @param cols The number of columns (output)
+ * @return EC_Normal if getting was successful, error otherwise
+ */
+ virtual OFCondition getColumns(Uint16& cols);
+
+ /** Perform some basic checking. This method is also invoked when
+ * writing the object to a DICOM dataset or file.
+ * @return OFTrue, if no errors were found, OFFalse otherwise.
+ */
+ virtual OFBool check();
+
+ /** Get number of frames, based on the number of items in the shared
+ * functional functional groups sequence (i.e.\ the attribute Number of
+ * Frames) is not trusted after reading
+ * @return The number of frames handled by this object
+ */
+ size_t getNumberOfFrames() const;
+
+ /** Get access to frame data
+ * @return Class managing the frame data
+ */
+ FramesType getFrames();
+
+protected:
+
+ /** Write current generic Parametric Map's attributes to DICOM dataset, i.e.
+ * those that are not directly pixel-related
+ * @param dataset Reference to DICOM dataset to which the current document
+ * should be written. The dataset is not cleared before writing
+ * to it.
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition writeGeneric(DcmItem &dataset);
+
+ /** Read Parametric Map's generic (not directly pixel-data related) attributes from
+ * DICOM dataset.
+ * @param dataset Reference to DICOM dataset to read from.
+ * @return EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition readGeneric(DcmItem &dataset);
+
+ /** Decompress the given dataset if required. Only RLE compression is accepted
+ * and decompressed by this tool. A warning is printed if the dataset has been compressed
+ * before with another compression scheme and is handed into this method in uncompressed
+ * format. Handing in any other compression but RLE will lead to an error.
+ * @param dset The dataset to be decompressed
+ * @return EC_Normal if decompression worked (or dataset is already in uncompressed format)
+ * IOD_EC_CannotDecompress otherwise
+ */
+ static OFCondition decompress(DcmDataset& dset);
+
+ /** Constructor
+ */
+ DPMParametricMapIOD();
+
+ /** Constructor, anonymous parameter is the image pixel module to be used
+ */
+ template<typename ImagePixel>
+ DPMParametricMapIOD(OFin_place_type_t(ImagePixel));
+
+private:
+
+ // Forward declarations
+ template<typename PixelType> class GetPixelDataVisitor;
+ struct SetImagePixelModuleVisitor;
+ struct WriteVisitor;
+ struct GetFramesVisitor;
+ struct ReadVisitor;
+ struct ReadFramesVisitor;
+
+ /** Initialize new Parametric Map object except directly pixel-related data
+ * @param modality The modality of this Parametric Map (series level attribute).
+ * A list of Defined Terms can be found in the standard. Very often
+ * "MR" is the right choice. Only if a mix of different modalities has been
+ * use for creation "OT" should be used.
+ * @param seriesNumber A number identifying this series. If importPatientStudyFor()
+ * is called later in order to put this Parametric Map into an existing Series,
+ * the Series Number will be taken over from the existing series instead.
+ * @param instanceNumber A number identifying this image
+ * @param equipmentInfo Information about the equipment creating thing Parametric Map
+ * @param contentIdentification General information about this content
+ * @param imageFlavor 3rd value of attribute Image Type. See standard for list of
+ * applicable Defined Terms.
+ * @param derivedPixelContrast 4th value of attribute Image Type. See standard for list of
+ * applicable Defined Terms.
+ * @param contentQualification Either one of CQ_PRODUCT, CQ_RESEARCH, CQ_SERVICE
+ * @return EC_Normal in case of success, error otherwise
+ */
+ OFCondition init(const OFString& modality,
+ const OFString& seriesNumber,
+ const OFString& instanceNumber,
+ const IODEnhGeneralEquipmentModule::EquipmentInfo& equipmentInfo,
+ const ContentIdentificationMacro& contentIdentification,
+ const OFString& imageFlavor,
+ const OFString& derivedPixelContrast,
+ const DPMTypes::ContentQualification& contentQualification);
+
+
+ /// Parametric Map Image Module's Content Identification
+ ContentIdentificationMacro m_ContentIdentification;
+
+ /// Binary frame data
+ OFVector<DcmIODTypes::Frame*> m_Frames;
+
+};
+
+#endif // DPMPARAMETRICMAPIOD_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Class managing various parametric myps-typical types
+ *
+ */
+
+#ifndef DPMTYPES_H
+#define DPMTYPES_H
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/oflog/oflog.h"
+#include "dcmtk/dcmiod/iodmacro.h"
+#include "dcmtk/dcmpmap/dpmdef.h"
+
+// ----------------------------------------------------------------------------
+// Define the loggers for this module
+// ----------------------------------------------------------------------------
+
+extern DCMTK_DCMPMAP_EXPORT OFLogger DCM_dcmpmapLogger;
+
+#define DCMPMAP_TRACE(msg) OFLOG_TRACE(DCM_dcmpmapLogger, msg)
+#define DCMPMAP_DEBUG(msg) OFLOG_DEBUG(DCM_dcmpmapLogger, msg)
+#define DCMPMAP_INFO(msg) OFLOG_INFO(DCM_dcmpmapLogger, msg)
+#define DCMPMAP_WARN(msg) OFLOG_WARN(DCM_dcmpmapLogger, msg)
+#define DCMPMAP_ERROR(msg) OFLOG_ERROR(DCM_dcmpmapLogger, msg)
+#define DCMPMAP_FATAL(msg) OFLOG_FATAL(DCM_dcmpmapLogger, msg)
+
+// ----------------------------------------------------------------------------
+// Error constants
+// ----------------------------------------------------------------------------
+
+extern DCMTK_DCMPMAP_EXPORT const OFConditionConst DPM_InvalidDimensions;
+extern DCMTK_DCMPMAP_EXPORT const OFConditionConst DPM_InvalidAttributeValue;
+extern DCMTK_DCMPMAP_EXPORT const OFConditionConst DPM_InvalidPixelInfo;
+extern DCMTK_DCMPMAP_EXPORT const OFConditionConst DPM_InvalidPixelData;
+extern DCMTK_DCMPMAP_EXPORT const OFConditionConst DPM_NoPixelData;
+extern DCMTK_DCMPMAP_EXPORT const OFConditionConst DPM_InvalidSOPClass;
+
+/** General purpose class hiding global functions, constants and types in the
+ * parametric map context from the global namespace.
+ */
+class DCMTK_DCMPMAP_EXPORT DPMTypes
+{
+ public:
+
+ /// Enum for attribute Content Qualification
+ enum ContentQualification
+ {
+ /// Unkonwn (e.g. not set)
+ CQ_UNKNOWN,
+ /// PRODUCT
+ CQ_PRODUCT,
+ /// RESEARCH
+ CQ_RESEARCH,
+ /// SERVICE
+ CQ_SERVICE
+ };
+
+ /// Enum for attribute Lossy Image Compression
+ enum LossyImageCompression
+ {
+ /// Unknown (e.g. not set)
+ COMP_UNKNOWN,
+ /// YES (lossy image compression used)
+ COMP_YES,
+ /// NO (no lossy image compression used)
+ COMP_NO
+ };
+
+
+ /// Enum for attribute Recognizable Visual Features
+ enum RecognizableVisibleFeatures
+ {
+ /// Unknown (e.g. not set)
+ RVF_UNKNOWN,
+ /// YES (recognizable visual features present)
+ RVF_YES,
+ /// NO (recognizable visual features not present)
+ RVF_NO
+ };
+
+ /** Convert Recognizable Visual Features enum to OFString
+ * @param rvf The enum to convert
+ * @return String version of enum value
+ */
+ static OFString rvf2Str(const RecognizableVisibleFeatures rvf);
+
+ /** Convert OFString version of Recognizable Visual Features attribute
+ * value to enum value
+ * @param rvf The OFString value to convert
+ * @return The enum value of the string
+ */
+ static RecognizableVisibleFeatures str2Rvf(const OFString& rvf);
+
+ /** Convert Content Qualification enum to OFString
+ * @param cq The enum to convert
+ * @return String version of enum value
+ */
+ static OFString cq2Str(const ContentQualification cq);
+
+ /** Convert OFString version of Content Qualification attribute
+ * value to enum value
+ * @param cq The OFString value to convert
+ * @return The enum value of the string
+ */
+ static ContentQualification str2Cq(const OFString& cq);
+
+ /** Check whether Recognizable Visual Features enum value is valid
+ * @param rvf Value to check
+ * @return OFTrue if valid, OFFalse otherwise
+ */
+ static OFBool rvfValid(const RecognizableVisibleFeatures rvf);
+
+ /** Check whether Content Qualification enum value is valid
+ * @param cq Value to check
+ * @return OFTrue if valid, OFFalse otherwise
+ */
+ static OFBool cqValid(const ContentQualification cq);
+
+};
+
+#endif // DPMTYPES_H
--- /dev/null
+# create library from source files
+DCMTK_ADD_LIBRARY(dcmpmap dpmtypes dpmmodparametricmapseries dpmmodparametricmapimage dpmparametricmapbase dpmparametricmapiod)
+
+DCMTK_TARGET_LINK_MODULES(dcmpmap dcmfg dcmiod dcmdata ofstd oflog)
+DCMTK_TARGET_LINK_LIBRARIES(dcmpmap ${ZLIB_LIBS} ${WIN32_STD_LIBRARIES})
--- /dev/null
+dpmmodparametricmapimage.o: dpmmodparametricmapimage.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h
+dpmmodparametricmapseries.o: dpmmodparametricmapseries.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapseries.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+dpmparametricmapbase.o: dpmparametricmapbase.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmpmap/dpmtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fginterface.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgtypes.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgdefine.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgderimg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgfracon.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframeanatomy.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframevoilut.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgidentpixeltransform.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgparametricmapframetype.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgpixmsr.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanor.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanpo.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgrealworldvaluemapping.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcommn.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatient.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatientstudy.h \
+ ../../ofstd/include/dcmtk/ofstd/ofoption.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralseries.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfor.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modsopcommon.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodreferences.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralimage.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modacquisitioncontext.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modenhequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframefg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixel.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfloatingpointimagepixel.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapimage.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapseries.h
+dpmparametricmapiod.o: dpmparametricmapiod.cc \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapiod.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fginterface.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgtypes.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgdefine.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgderimg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgfracon.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframeanatomy.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframevoilut.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgidentpixeltransform.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgparametricmapframetype.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgpixmsr.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanor.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanpo.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgrealworldvaluemapping.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcommn.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatient.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatientstudy.h \
+ ../../ofstd/include/dcmtk/ofstd/ofoption.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralseries.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfor.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modsopcommon.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodreferences.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralimage.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modacquisitioncontext.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modenhequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframefg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixel.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfloatingpointimagepixel.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapimage.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapseries.h \
+ ../include/dcmtk/dcmpmap/dpmtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h
+dpmtypes.o: dpmtypes.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../include/dcmtk/dcmpmap/dpmtypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h
--- /dev/null
+#
+# Makefile for dcmpmap/libsrc
+#
+
+@SET_MAKE@
+
+SHELL = /bin/sh
+VPATH = @srcdir@:@top_srcdir@/include:@top_srcdir@/@configdir@/include
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+configdir = @top_srcdir@/@configdir@
+
+include $(configdir)/@common_makefile@
+
+ofstddir = $(top_srcdir)/../ofstd
+oflogdir = $(top_srcdir)/../oflog
+dcmdatadir = $(top_srcdir)/../dcmdata
+dcmioddir = $(top_srcdir)/../dcmiod
+dcmfgdir = $(top_srcdir)/../dcmfg
+
+LOCALINCLUDES = -I$(ofstddir)/include -I$(oflogdir)/include \
+ -I$(dcmdatadir)/include -I$(dcmioddir)/include \
+ -I$(dcmfgdir)/include
+
+LOCALDEFS =
+
+objs = dpmtypes.o dpmtypes.o dpmmodparametricmapseries.o dpmmodparametricmapimage.o dpmparametricmapbase.o dpmparametricmapiod.o
+
+
+library = libdcmpmap.$(LIBEXT)
+
+
+all: $(library)
+
+install: $(library)
+ $(configdir)/mkinstalldirs $(DESTDIR)$(libdir)
+ $(INSTALL_DATA) $(library) $(DESTDIR)$(libdir)/$(library)
+ $(RANLIB) $(DESTDIR)$(libdir)/$(library)
+
+
+$(library): $(objs)
+ $(AR) $(ARFLAGS) $@ $(objs)
+ $(RANLIB) $@
+
+
+clean:
+ rm -f $(objs) $(library) $(TRASH)
+
+distclean:
+ rm -f $(objs) $(library) $(DISTTRASH)
+
+
+dependencies:
+ $(CXX) -MM $(defines) $(includes) $(CPPFLAGS) $(CXXFLAGS) *.cc > $(DEP)
+
+include $(DEP)
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Parametric Map Image Module
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmdata/dcvrcs.h"
+#include "dcmtk/dcmdata/dcvrds.h"
+#include "dcmtk/dcmiod/iodutil.h"
+#include "dcmtk/dcmpmap/dpmmodparametricmapimage.h"
+
+const OFString DPMParametricMapImageModule::m_ModuleName = "DPMParametricMapImageModule";
+
+DPMParametricMapImageModule::DPMParametricMapImageModule()
+: IODModule()
+{
+ resetRules();
+}
+
+DPMParametricMapImageModule::DPMParametricMapImageModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules)
+: IODModule(item, rules)
+{
+ // reset element rules
+ resetRules();
+}
+
+DPMParametricMapImageModule::~DPMParametricMapImageModule()
+{
+
+}
+
+OFString DPMParametricMapImageModule::getName() const
+{
+ return m_ModuleName;
+}
+
+void DPMParametricMapImageModule::resetRules()
+{
+ // parameters are tag, VM, type. Overwrite old rules if any.
+ m_Rules->addRule(new IODRule(DCM_ImageType, "2-n","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_SamplesPerPixel, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_PhotometricInterpretation, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_BitsAllocated, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_BitsStored, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_HighBit, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_PresentationLUTShape, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_LossyImageCompression, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_LossyImageCompressionRatio, "1-n","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_LossyImageCompressionMethod, "1-n","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_BurnedInAnnotation, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_RecognizableVisualFeatures, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ContentQualification, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+}
+
+OFCondition DPMParametricMapImageModule::read(DcmItem& source,
+ const OFBool clearOldData)
+{
+ if (clearOldData)
+ clearData();
+
+ IODComponent::read(source, OFFalse /* data already cleared */);
+
+ return EC_Normal;
+}
+
+OFCondition DPMParametricMapImageModule::write(DcmItem& destination)
+{
+ OFCondition result = EC_Normal;
+
+ result = IODComponent::write(destination);
+
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::getImageType(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_ImageType, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getSamplesPerPixel(Uint16 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetUint16(DCM_SamplesPerPixel, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getPhotometricInterpretation(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_PhotometricInterpretation, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getBitsAllocated(Uint16 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetUint16(DCM_BitsAllocated, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getBitsStored(Uint16 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetUint16(DCM_BitsStored, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getHighBit(Uint16 &value,
+ const signed long pos) const
+{
+ return m_Item->findAndGetUint16(DCM_HighBit, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getPresentationLUTShape(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_PresentationLUTShape, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getLossyImageCompression(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_LossyImageCompression, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getLossyImageCompressionRatio(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_LossyImageCompressionRatio, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getLossyImageCompressionMethod(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_LossyImageCompressionMethod, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getBurnedInAnnotation(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_BurnedInAnnotation, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getRecognizableVisualFeatures(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_RecognizableVisualFeatures, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::getContentQualification(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_ContentQualification, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapImageModule::setImageType(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "2-n") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_ImageType, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setSamplesPerPixel(const Uint16 &value,
+ const OFBool checkValue)
+{
+ if (checkValue && (value != 1))
+ return IOD_EC_InvalidElementValue;
+
+ return m_Item->putAndInsertUint16(DCM_SamplesPerPixel, value);
+}
+
+OFCondition DPMParametricMapImageModule::setPhotometricInterpretation(const OFString &value,
+ const OFBool checkValue)
+{
+ if (checkValue && (value != "MONOCHROME2"))
+ return IOD_EC_InvalidElementValue;
+
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_PhotometricInterpretation, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setBitsAllocated(const Uint16 &value,
+ const OFBool checkValue)
+{
+ if (checkValue && (value != 16) && (value != 32) && (value != 64))
+ return IOD_EC_InvalidElementValue;
+
+ return m_Item->putAndInsertUint16(DCM_BitsAllocated, value);
+}
+
+OFCondition DPMParametricMapImageModule::setBitsStored(const Uint16 &value,
+ const OFBool checkValue)
+{
+ if (checkValue && (value != 16) && (value != 32) && (value != 64))
+ return IOD_EC_InvalidElementValue;
+
+ return m_Item->putAndInsertUint16(DCM_BitsStored, value);
+}
+
+OFCondition DPMParametricMapImageModule::setHighBit(const Uint16 &value,
+ const OFBool checkValue)
+{
+ if (checkValue && (value != 15))
+ return IOD_EC_InvalidElementValue;
+
+ return m_Item->putAndInsertUint16(DCM_HighBit, value);
+}
+
+OFCondition DPMParametricMapImageModule::setPresentationLUTShape(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_PresentationLUTShape, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setLossyImageCompression(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_LossyImageCompression, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setLossyImageCompressionRatio(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmDecimalString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_LossyImageCompressionRatio, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setLossyImageCompressionMethod(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_LossyImageCompressionMethod, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setBurnedInAnnotation(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_BurnedInAnnotation, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setRecognizableVisualFeatures(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_RecognizableVisualFeatures, value);
+ return result;
+}
+
+OFCondition DPMParametricMapImageModule::setContentQualification(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_ContentQualification, value);
+ return result;
+}
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Class for managing the Parametric Map Series Module
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcdeftag.h"
+#include "dcmtk/dcmdata/dcvrcs.h"
+#include "dcmtk/dcmdata/dcvris.h"
+#include "dcmtk/dcmiod/iodutil.h"
+#include "dcmtk/dcmpmap/dpmmodparametricmapseries.h"
+
+const OFString DPMParametricMapSeriesModule::m_ModuleName = "DPMParametricMapSeriesModule";
+
+DPMParametricMapSeriesModule::DPMParametricMapSeriesModule()
+: IODModule()
+{
+ resetRules();
+}
+
+DPMParametricMapSeriesModule::DPMParametricMapSeriesModule(OFshared_ptr<DcmItem> item,
+ OFshared_ptr<IODRules> rules)
+: IODModule(item, rules)
+{
+ // reset element rules
+ resetRules();
+}
+
+DPMParametricMapSeriesModule::~DPMParametricMapSeriesModule()
+{
+
+}
+
+OFString DPMParametricMapSeriesModule::getName() const
+{
+ return m_ModuleName;
+}
+
+void DPMParametricMapSeriesModule::resetRules()
+{
+ // parameters are tag, VM, type. Overwrite old rules if any.
+ m_Rules->addRule(new IODRule(DCM_Modality, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_SeriesNumber, "1","1", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+ m_Rules->addRule(new IODRule(DCM_ReferencedPerformedProcedureStepSequence, "1","1C", getName(), DcmIODTypes::IE_SERIES), OFTrue);
+}
+
+OFCondition DPMParametricMapSeriesModule::read(DcmItem& source,
+ const OFBool clearOldData)
+{
+ if (clearOldData)
+ clearData();
+
+ IODComponent::read(source, OFFalse /* data already cleared */);
+ DcmIODUtil::readSubSequence(source, DCM_ReferencedPerformedProcedureStepSequence, m_ReferencedPerformedProcedureStepSequence, m_Rules->getByTag(DCM_ReferencedPerformedProcedureStepSequence));
+
+ return EC_Normal;
+}
+
+OFCondition DPMParametricMapSeriesModule::write(DcmItem& destination)
+{
+ OFCondition result = EC_Normal;
+
+ if(SOPInstanceReferenceMacro* pReferencedPerformedProcedureStepSequence = getReferencedPerformedProcedureStepSequence())
+ DcmIODUtil::writeSingleItem(result, DCM_ReferencedPerformedProcedureStepSequence, *pReferencedPerformedProcedureStepSequence, *m_Item, m_Rules->getByTag(DCM_ReferencedPerformedProcedureStepSequence));
+ result = IODComponent::write(destination);
+
+ return result;
+}
+
+OFCondition DPMParametricMapSeriesModule::getModality(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_Modality, *m_Item, value, pos);
+}
+
+OFCondition DPMParametricMapSeriesModule::getSeriesNumber(OFString &value,
+ const signed long pos) const
+{
+ return DcmIODUtil::getStringValueFromItem(DCM_SeriesNumber, *m_Item, value, pos);
+}
+
+SOPInstanceReferenceMacro* DPMParametricMapSeriesModule::getReferencedPerformedProcedureStepSequence()
+{
+ return m_ReferencedPerformedProcedureStepSequence.empty() ? OFnullptr : &*m_ReferencedPerformedProcedureStepSequence.begin();
+}
+
+OFVector<SOPInstanceReferenceMacro>& DPMParametricMapSeriesModule::getEntireReferencedPerformedProcedureStepSequence()
+{
+ return m_ReferencedPerformedProcedureStepSequence;
+}
+
+OFCondition DPMParametricMapSeriesModule::setModality(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_Modality, value);
+ return result;
+}
+
+OFCondition DPMParametricMapSeriesModule::setSeriesNumber(const OFString &value,
+ const OFBool checkValue)
+{
+ OFCondition result = (checkValue) ? DcmIntegerString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = m_Item->putAndInsertOFStringArray(DCM_SeriesNumber, value);
+ return result;
+}
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Generated base class representing the Parametric Map IOD
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmiod/iodutil.h"
+#include "dcmtk/dcmpmap/dpmtypes.h"
+#include "dcmtk/dcmpmap/dpmparametricmapbase.h"
+
+
+DPMParametricMapBase::DPMParametricMapBase()
+: DPMParametricMapBase::IODImage()
+, m_DPMParametricMapSeriesModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODEnhGeneralEquipmentModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_DPMParametricMapImageModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODMultiFrameFGModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODMultiframeDimensionModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODAcquisitionContextModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODCommonInstanceReferenceModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+{
+}
+
+
+template<typename ImagePixel>
+DPMParametricMapBase::DPMParametricMapBase(OFin_place_type_t(ImagePixel))
+: DPMParametricMapBase::IODImage(OFin_place<ImagePixel>)
+, m_DPMParametricMapSeriesModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODEnhGeneralEquipmentModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_DPMParametricMapImageModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODMultiFrameFGModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODMultiframeDimensionModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODAcquisitionContextModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+, m_IODCommonInstanceReferenceModule(DPMParametricMapBase::IODImage::getData(), DPMParametricMapBase::IODImage::getRules())
+{
+}
+
+
+DPMParametricMapBase::~DPMParametricMapBase()
+{
+}
+
+
+void DPMParametricMapBase::clearData()
+{
+ DPMParametricMapBase::IODImage::clearData();
+}
+
+
+OFCondition DPMParametricMapBase::read(DcmItem& dataset)
+{
+ OFString sopClass;
+ if(DcmIODUtil::checkSOPClass(&dataset, UID_ParametricMapStorage, sopClass).bad())
+ {
+ DCMPMAP_ERROR("Given file does not seem to be a Parametric Map storage object since SOP class is: " << sopClass);
+ return IOD_EC_WrongSOPClass;
+ }
+
+ DPMParametricMapBase::IODImage::read(dataset);
+ m_DPMParametricMapSeriesModule.read(dataset);
+ m_IODEnhGeneralEquipmentModule.read(dataset);
+ m_DPMParametricMapImageModule.read(dataset);
+ m_IODMultiFrameFGModule.read(dataset);
+ m_FGInterface.read(dataset);
+ m_IODMultiframeDimensionModule.read(dataset);
+ m_IODAcquisitionContextModule.read(dataset);
+ m_IODCommonInstanceReferenceModule.read(dataset);
+
+ return EC_Normal;
+}
+
+
+OFCondition DPMParametricMapBase::saveFile(const OFString& filename,
+ const E_TransferSyntax writeXfer)
+{
+ DcmFileFormat dcmff;
+ OFCondition result;
+ if((result = write(*dcmff.getDataset())).good())
+ result = dcmff.saveFile(filename.c_str(), writeXfer);
+ if(result.bad())
+ DCMPMAP_ERROR("Cannot save Parametric Map object to file " << filename << ": " << result.text());
+ return result;
+}
+
+
+OFCondition DPMParametricMapBase::writeDataset(DcmItem& dataset)
+{
+ return write(dataset);
+}
+
+
+OFCondition DPMParametricMapBase::write(DcmItem& dataset)
+{
+ if(!check())
+ return IOD_EC_InvalidObject;
+
+ OFCondition result;
+ if((result = m_DPMParametricMapSeriesModule.write(dataset)).good())
+ if((result = m_IODEnhGeneralEquipmentModule.write(dataset)).good())
+ if((result = m_DPMParametricMapImageModule.write(dataset)).good())
+ if((result = m_IODMultiFrameFGModule.write(dataset)).good())
+ if((result = m_FGInterface.write(dataset)).good())
+ if((result = m_IODMultiframeDimensionModule.write(dataset)).good())
+ if((result = m_IODAcquisitionContextModule.write(dataset)).good())
+ if((result = m_IODCommonInstanceReferenceModule.write(dataset)).good())
+ return DPMParametricMapBase::IODImage::write(dataset);
+
+ return result;
+}
+
+
+OFBool DPMParametricMapBase::check()
+{
+ return m_FGInterface.check();
+}
+
+
+FGInterface& DPMParametricMapBase::getFunctionalGroups()
+{
+ return m_FGInterface;
+}
+
+
+IODPatientModule& DPMParametricMapBase::getIODPatientModule()
+{
+ return DPMParametricMapBase::IODImage::getPatient();
+}
+
+
+IODGeneralStudyModule& DPMParametricMapBase::getIODGeneralStudyModule()
+{
+ return DPMParametricMapBase::IODImage::getStudy();
+}
+
+
+IODPatientStudyModule& DPMParametricMapBase::getIODPatientStudyModule()
+{
+ return DPMParametricMapBase::IODImage::getPatientStudy();
+}
+
+
+IODGeneralSeriesModule& DPMParametricMapBase::getIODGeneralSeriesModule()
+{
+ return DPMParametricMapBase::IODImage::getSeries();
+}
+
+
+DPMParametricMapSeriesModule& DPMParametricMapBase::getDPMParametricMapSeriesModule()
+{
+ return m_DPMParametricMapSeriesModule;
+}
+
+
+IODGeneralEquipmentModule& DPMParametricMapBase::getIODGeneralEquipmentModule()
+{
+ return DPMParametricMapBase::IODImage::getEquipment();
+}
+
+
+IODEnhGeneralEquipmentModule& DPMParametricMapBase::getIODEnhGeneralEquipmentModule()
+{
+ return m_IODEnhGeneralEquipmentModule;
+}
+
+
+IODGeneralImageModule& DPMParametricMapBase::getIODGeneralImageModule()
+{
+ return DPMParametricMapBase::IODImage::getGeneralImage();
+}
+
+
+DPMParametricMapImageModule& DPMParametricMapBase::getDPMParametricMapImageModule()
+{
+ return m_DPMParametricMapImageModule;
+}
+
+
+IODMultiFrameFGModule& DPMParametricMapBase::getIODMultiFrameFGModule()
+{
+ return m_IODMultiFrameFGModule;
+}
+
+
+IODMultiframeDimensionModule& DPMParametricMapBase::getIODMultiframeDimensionModule()
+{
+ return m_IODMultiframeDimensionModule;
+}
+
+
+IODAcquisitionContextModule& DPMParametricMapBase::getIODAcquisitionContextModule()
+{
+ return m_IODAcquisitionContextModule;
+}
+
+
+IODCommonInstanceReferenceModule& DPMParametricMapBase::getIODCommonInstanceReferenceModule()
+{
+ return m_IODCommonInstanceReferenceModule;
+}
+
+
+IODSOPCommonModule& DPMParametricMapBase::getIODSOPCommonModule()
+{
+ return DPMParametricMapBase::IODImage::getSOPCommon();
+}
+
+
+template DCMTK_DCMPMAP_EXPORT DPMParametricMapBase::DPMParametricMapBase(OFin_place_type_t(IODImagePixelModule<Uint16>));
+template DCMTK_DCMPMAP_EXPORT DPMParametricMapBase::DPMParametricMapBase(OFin_place_type_t(IODImagePixelModule<Sint16>));
+template DCMTK_DCMPMAP_EXPORT DPMParametricMapBase::DPMParametricMapBase(OFin_place_type_t(IODFloatingPointImagePixelModule));
+template DCMTK_DCMPMAP_EXPORT DPMParametricMapBase::DPMParametricMapBase(OFin_place_type_t(IODDoubleFloatingPointImagePixelModule));
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Class for managing the Parametric Map IOD
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmpmap/dpmparametricmapiod.h"
+#include "dcmtk/dcmiod/iodutil.h"
+
+// ----------------------------------------------------------------------------
+// Class SetImagePixelModuleVisitor:
+// Class for setting Image Pixel Module attributes based on pixel data type
+// ----------------------------------------------------------------------------
+
+struct DPMParametricMapIOD::SetImagePixelModuleVisitor
+{
+ SetImagePixelModuleVisitor(const Uint16 r,
+ const Uint16 c)
+ : rows(r)
+ , cols(c)
+ {
+
+ }
+
+ template<typename T>
+ OFCondition operator()( T& t )
+ {
+ if ( (rows == 0) || (cols == 0) )
+ {
+ DCMPMAP_ERROR("Rows/Cols must be non-zero but are : " << rows << "/" << cols);
+ return DPM_InvalidDimensions;
+ }
+
+ t.setRows(rows);
+ t.setColumns(cols);
+ setSpecificValues(t);
+
+ return EC_Normal;
+ }
+
+ template<typename T>
+ void setSpecificValues(IODImagePixelModule<T>& p)
+ {
+ p.setBitsAllocated(16);
+ p.setBitsStored(16);
+ p.setHighBit(15);
+ p.setSamplesPerPixel(1);
+ p.setPhotometricInterpretation("MONOCHROME2");
+ p.setPixelRepresentation(OFis_signed<T>::value ? 1 : 0);
+ }
+
+ void setSpecificValues(IODFloatingPointImagePixelModule& p)
+ {
+ // Avoid compiler warning about unused parameter "p"
+ (void)p;
+ // No specific values for 32 bit floating point data to be set
+ }
+
+ void setSpecificValues(IODDoubleFloatingPointImagePixelModule& p)
+ {
+ // Avoid compiler warning about unused parameter "p"
+ (void)p;
+ // No specific values for 64 bit floating point data to be set
+ }
+ // Members
+ const Uint16 rows;
+ const Uint16 cols;
+};
+
+
+struct DPMParametricMapIOD::ReadVisitor
+{
+ // Inner class that implements the specializations for different
+ // pixel data types
+ template<typename T>
+ class DcmElementOf;
+
+ ReadVisitor(DcmItem& srcItem,
+ DPMParametricMapIOD& m)
+ : item(srcItem)
+ , map(m)
+ {
+ // Nothing to do
+ }
+
+ OFCondition operator()(OFmonostate)
+ {
+ return DPM_InvalidPixelData;
+ }
+
+ template<typename ImagePixel>
+ OFCondition operator()(ImagePixel& pixel)
+ {
+ OFCondition result = map.readGeneric(item);
+ if (result.good())
+ {
+ Uint16 rows, cols;
+ size_t numFrames, numBytesFrame;
+ rows = cols = numFrames = numBytesFrame = 0;
+ map.getRows(rows);
+ map.getColumns(cols);
+ numFrames = map.getFunctionalGroups().getNumberOfFrames();
+ if (!rows || !cols || !numFrames)
+ {
+ DCMPMAP_ERROR("Rows (" << rows << "), Columns (" << cols << ") and Number of Frames (" << numFrames << ") must not be 0");
+ return DPM_InvalidPixelInfo;
+ }
+ numBytesFrame = rows * cols * sizeof(typename ImagePixel::value_type);
+ result = readSpecific(pixel, numFrames, numBytesFrame);
+ }
+ return result;
+ }
+
+ template<typename T>
+ OFCondition readSpecific(IODImagePixelModule<T>& p,
+ const Uint16 numFrames,
+ const size_t numBytesFrame)
+ {
+ // Avoid compiler warning about unused parameter
+ (void)p;
+ unsigned long numTotalWords = 0;
+ const Uint16* pixData = NULL;
+ if (item.findAndGetUint16Array(DCM_PixelData, pixData, &numTotalWords).good())
+ {
+ if (numTotalWords == numBytesFrame * numFrames / 2 /* we compare to num words not num bytes */)
+ {
+ for (Uint16 n = 0; n < numFrames; n++)
+ {
+ DcmIODTypes::Frame* f = new DcmIODTypes::Frame;
+ if (f)
+ {
+ f->length = numBytesFrame;
+ f->pixData = new Uint8[f->length];
+ memcpy(f->pixData, pixData + n*numBytesFrame/2, numBytesFrame);
+ map.m_Frames.push_back(f);
+ }
+ else
+ {
+ return EC_MemoryExhausted;
+ }
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("Invalid number of pixels: Expected " << numBytesFrame * numFrames / 2 << " pixels but Pixel Data has " << numTotalWords << " pixels");
+ return DPM_InvalidPixelInfo;
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("No Pixel Data element found");
+ return DPM_NoPixelData;
+ }
+ return EC_Normal;
+ }
+
+ OFCondition readSpecific(IODFloatingPointImagePixelModule& p,
+ const Uint16 numFrames,
+ const size_t numBytesFrame)
+ {
+ // Avoid compiler warning on unused parameter
+ (void)p;
+ unsigned long numTotalFloats = 0;
+ const Float32* pixData = NULL;
+ if (item.findAndGetFloat32Array(DCM_FloatPixelData, pixData, &numTotalFloats).good())
+ {
+ if (numTotalFloats == numBytesFrame * numFrames / 4 /* we compare to 32 bit floats not bytes */)
+ {
+ for (Uint16 n=0; n < numFrames; n++)
+ {
+ DcmIODTypes::Frame* f = new DcmIODTypes::Frame;
+ if (f)
+ {
+ f->length = numBytesFrame;
+ f->pixData = new Uint8[f->length];
+ memcpy(f->pixData, pixData + n*numBytesFrame/4, numBytesFrame);
+ map.m_Frames.push_back(f);
+ }
+ else
+ {
+ return EC_MemoryExhausted;
+ }
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("Invalid number of pixels: Expected " << numBytesFrame * numFrames / 4 << " pixels but Float Pixel Data has " << numTotalFloats << " pixels");
+ return DPM_InvalidPixelInfo;
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("No Float Pixel Data element found");
+ return DPM_NoPixelData;
+ }
+ return EC_Normal;
+ }
+
+ OFCondition readSpecific(IODDoubleFloatingPointImagePixelModule& p,
+ const Uint16 numFrames,
+ const size_t numBytesFrame)
+ {
+ // Avoid compiler warning on unused parameter
+ (void)p;
+ unsigned long numTotalFloats = 0;
+ const Float64* pixData = NULL;
+ if (item.findAndGetFloat64Array(DCM_DoubleFloatPixelData, pixData, &numTotalFloats).good())
+ {
+ if (numTotalFloats == numBytesFrame * numFrames / 8 /* we compare to 64 bit floats not bytes */)
+ {
+ for (Uint16 n=0; n < numFrames; n++)
+ {
+ DcmIODTypes::Frame* f = new DcmIODTypes::Frame;
+ if (f)
+ {
+ f->length = numBytesFrame;
+ f->pixData = new Uint8[f->length];
+ memcpy(f->pixData, pixData + n*numBytesFrame/8, numBytesFrame);
+ map.m_Frames.push_back(f);
+ }
+ else
+ {
+ return EC_MemoryExhausted;
+ }
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("Invalid number of pixels: Expected " << numBytesFrame * numFrames / 8 << " pixels but Double Float Pixel Data has " << numTotalFloats << " pixels");
+ return DPM_InvalidPixelInfo;
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("No Double Float Pixel Data element found");
+ return DPM_NoPixelData;
+ }
+ return EC_Normal;
+ }
+
+ // Members, i.e. parameters to operator()
+ DcmItem& item;
+ DPMParametricMapIOD& map;
+};
+
+
+
+// ----------------------------------------------------------------------------
+// Class WriteVisitor:
+// Class for adding DICOM pixel data bulk element based on type pixel data type
+// ----------------------------------------------------------------------------
+
+// Generic implementation, template specialization is done in inner
+// DcmElementOf class
+struct DPMParametricMapIOD::WriteVisitor
+{
+ // Inner class that implements the specializations for different
+ // pixel data types
+ template<typename T>
+ class DcmElementOf;
+
+ // Constructor, sets parameters the visitor works on in operator()
+ WriteVisitor(DcmItem& i,
+ DPMParametricMapIOD& m)
+ : item(i)
+ , map(m)
+ {
+ // Nothing else to do
+ }
+
+ //
+ OFCondition operator()(OFmonostate)
+ {
+ DCMPMAP_ERROR("Could not write pixel data: Invalid pixel data type, only 16 bit integer as well as 32 and 64 bit float data are handled");
+ return DPM_NoPixelData;
+ }
+
+ template<typename ImagePixel>
+ OFCondition operator()(ImagePixel& pixel)
+ {
+ // Avoid compiler warning about unused parameter "pixel"
+ (void)pixel;
+ // Input data is checked before
+ Uint16 rows = 0;
+ Uint16 cols = 0;
+ map.getRows(rows);
+ map.getColumns(cols);
+ const size_t numFrames = map.m_Frames.size();
+ const size_t numBytesFrame = map.m_Frames[0]->length;
+ const size_t numPixelsFrame = rows * cols;
+ // Creates the correct pixel data element, based on the image pixel module used.
+ // I.e. For integer data, the "Pixel Data" element is used, i.e. the DcmElement type
+ // instantiated by DcmElementOf is of DCMTK type DcmOtherByteOtherWord while for
+ // IODFloatingPointImagePixelModule which has floating point pixel data, DcmFloatingPointSingle
+ // is used.
+ DcmElementOf<ImagePixel> element;
+ // copy all frames into map's frame structure
+ if (OFTypename ImagePixel::value_type* ptr = element.getData(numBytesFrame * numFrames))
+ {
+ for (size_t f = 0; f < numFrames; ++f)
+ {
+ memcpy(ptr, map.m_Frames[f]->pixData, numBytesFrame);
+ ptr += numPixelsFrame;
+ }
+ OFCondition result = element.put(item);
+ // Write generic (i.e. non pixel data-specific attributes)
+ return result.good() ? map.writeGeneric(item) : result;
+ }
+ return EC_MemoryExhausted;
+ }
+
+ // Members, i.e. parameters to operator()
+ DcmItem& item;
+ DPMParametricMapIOD& map;
+};
+
+
+// ----------------------------------------------------------------------------
+// Class WriteVisitor:DcmElementOf<IODImagePixelModule<PixelType> >:
+// Offers creation and insertion for Pixel Data element as used for
+// int-based pixel data. So far, Uint8, Sint8, Uint16 and Sint16 pixel
+// data is supported (relates to OB/OW data type for DICOM Pixel data)
+// ----------------------------------------------------------------------------
+
+template<typename PixelType>
+class DPMParametricMapIOD::WriteVisitor::DcmElementOf<IODImagePixelModule<PixelType> >
+{
+public:
+
+ DcmElementOf()
+ : m_pElement(new DcmOtherByteOtherWord(DCM_PixelData))
+ {
+ // Nothing else to do
+ }
+
+ PixelType* getData(const size_t count);
+
+ OFCondition put(DcmItem& item)
+ {
+ OFCondition result = item.insert(m_pElement.get(), OFTrue);
+ if (result.good())
+ m_pElement.release();
+ return result;
+ }
+
+private:
+
+ OFunique_ptr<DcmOtherByteOtherWord> m_pElement;
+};
+
+
+template<>
+Uint8* DPMParametricMapIOD::WriteVisitor::DcmElementOf<IODImagePixelModule<Uint8> >::getData(const size_t size)
+{
+ if (m_pElement)
+ if (m_pElement->setVR(EVR_OB).good())
+ {
+ Uint8* result;
+ if (m_pElement->createUint8Array(size, result).good())
+ return result;
+ }
+ return OFnullptr;
+}
+
+
+template<>
+Sint8* DPMParametricMapIOD::WriteVisitor::DcmElementOf<IODImagePixelModule<Sint8> >::getData(const size_t size)
+{
+ if (m_pElement)
+ if (m_pElement->setVR(EVR_OB).good())
+ {
+ Uint8* result;
+ if (m_pElement->createUint8Array(size, result).good())
+ return OFreinterpret_cast(Sint8*, result);
+ }
+ return OFnullptr;
+}
+
+
+template<>
+Uint16* DPMParametricMapIOD::WriteVisitor::DcmElementOf<IODImagePixelModule<Uint16> >::getData(const size_t size /* num total pixels */)
+{
+ if (m_pElement)
+ if (m_pElement->setVR(EVR_OW).good())
+ {
+ Uint16* result;
+ if (m_pElement->createUint16Array(size / 2, result).good())
+ return result;
+ }
+ return OFnullptr;
+}
+
+
+template<>
+Sint16* DPMParametricMapIOD::WriteVisitor::DcmElementOf<IODImagePixelModule<Sint16> >::getData(const size_t size)
+{
+ if (m_pElement)
+ if (m_pElement->setVR(EVR_OW).good())
+ {
+ Uint16* result;
+ if (m_pElement->createUint16Array(size / 2, result).good())
+ return OFreinterpret_cast(Sint16*, result);
+ }
+ return OFnullptr;
+}
+
+
+// ----------------------------------------------------------------------------
+// Class WriteVisitor:DcmElementOf<IODImagePixelModule<IODFloatingPointImagePixelModule> >:
+// Offers creation and insertion for Pixel Data element as used for
+// 32 bit float-based pixel data as used in Parametric Map IOD
+// ----------------------------------------------------------------------------
+
+template<>
+class DPMParametricMapIOD::WriteVisitor::DcmElementOf<IODFloatingPointImagePixelModule>
+{
+public:
+ DcmElementOf()
+ : m_pElement(new DcmFloatingPointSingleAlloc(DCM_FloatPixelData))
+ {
+
+ }
+
+ Float32* getData(const size_t size)
+ {
+ if (m_pElement)
+ {
+ Float32* result;
+ if (m_pElement->createFloat32Array(size, result).good())
+ return result;
+ }
+ return OFnullptr;
+ }
+
+ OFCondition put(DcmItem& item)
+ {
+ OFCondition result = item.insert(m_pElement.get(), OFTrue);
+ if (result.good())
+ m_pElement.release();
+ return result;
+ }
+
+private:
+
+ struct DcmFloatingPointSingleAlloc : DcmFloatingPointSingle
+ {
+ DcmFloatingPointSingleAlloc(const DcmTagKey& tag)
+ : DcmFloatingPointSingle(tag)
+ {
+
+ }
+
+ OFCondition createFloat32Array(const size_t size,
+ Float32*& result)
+ {
+ OFCondition status = createEmptyValue(size);
+ result = OFreinterpret_cast(Float32*, getValue());
+ return status;
+ }
+ };
+
+ OFunique_ptr<DcmFloatingPointSingleAlloc> m_pElement;
+};
+
+
+// ----------------------------------------------------------------------------
+// Class WriteVisitor:DcmElementOf<IODImagePixelModule<IODFloatingPointImagePixelModule> >:
+// Offers creation and insertion for Pixel Data element as used for
+// 64 bit float-based pixel data as used in Parametric Map IOD.
+// ----------------------------------------------------------------------------
+
+template<>
+class DPMParametricMapIOD::WriteVisitor::DcmElementOf<IODDoubleFloatingPointImagePixelModule>
+{
+public:
+ DcmElementOf()
+ : m_pElement(new DcmFloatingPointDoubleAlloc(DCM_DoubleFloatPixelData))
+ {
+
+ }
+
+ Float64* getData(const size_t size)
+ {
+ if (m_pElement)
+ {
+ Float64* result;
+ if (m_pElement->createFloat64Array(size, result).good())
+ return result;
+ }
+ return OFnullptr;
+ }
+
+ OFCondition put(DcmItem& item)
+ {
+ OFCondition result = item.insert(m_pElement.get(), OFTrue);
+ if (result.good())
+ m_pElement.release();
+ return result;
+ }
+
+private:
+
+ struct DcmFloatingPointDoubleAlloc : DcmFloatingPointDouble
+ {
+ DcmFloatingPointDoubleAlloc(const DcmTagKey& tag)
+ : DcmFloatingPointDouble(tag)
+ {
+
+ }
+
+ OFCondition createFloat64Array(const size_t size, Float64*& result)
+ {
+ OFCondition status = createEmptyValue(size);
+ result = OFreinterpret_cast(Float64*, getValue());
+ return status;
+ }
+ };
+
+ OFunique_ptr<DcmFloatingPointDoubleAlloc> m_pElement;
+};
+
+
+// Helper "class" that returns Frames offering API to the pixel's frame bulk
+// data by offering the dedicated data type, e.g. Float32 instead of the
+// internally stored generic Uint8 array.
+//
+struct DPMParametricMapIOD::GetFramesVisitor
+{
+ GetFramesVisitor(DPMParametricMapIOD& m)
+ : map(m)
+ {
+
+ }
+
+ OFCondition operator()(OFmonostate)
+ {
+ return DPM_InvalidPixelData;
+ }
+
+ template<typename ImagePixel>
+ Frames<OFTypename ImagePixel::value_type> operator()(ImagePixel&)
+ {
+ return Frames<OFTypename ImagePixel::value_type>(map);
+ }
+
+ DPMParametricMapIOD& map;
+};
+
+
+/** Helper "class" that returns Frames offering API to the pixel's frame bulk
+ * data by offering the dedicated data type, e.g. Float32 instead of the
+ * internally stored generic Uint8 array.
+ */
+struct DPMParametricMapIOD::ReadFramesVisitor
+{
+ ReadFramesVisitor(DcmItem& i,
+ DPMParametricMapIOD& m)
+ : map(m), item(i)
+ {
+ // Nothing else to do
+ }
+
+ OFCondition operator()(OFmonostate)
+ {
+ return DPM_InvalidPixelData;
+ }
+
+ template<typename ImagePixel>
+ OFCondition operator()(ImagePixel&)
+ {
+ return Frames<OFTypename ImagePixel::value_type>(map);
+ }
+
+ // Members, i.e. parameters to operator()
+ DPMParametricMapIOD& map;
+ DcmItem& item;
+};
+
+
+
+template<typename PixelType>
+DPMParametricMapIOD::Frames<PixelType>::Frames(DPMParametricMapIOD& map)
+: m_Map(map)
+{
+
+}
+
+
+template<typename PixelType>
+OFCondition DPMParametricMapIOD::Frames<PixelType>::addFrame(PixelType* data,
+ const size_t numPixels,
+ const OFVector<FGBase*>& perFrameInformation)
+{
+ OFCondition result;
+ if (data && numPixels)
+ {
+ if (!perFrameInformation.empty())
+ {
+ OFunique_ptr<DcmIODTypes::Frame> f(new DcmIODTypes::Frame);
+ if (f)
+ {
+ f->length = numPixels * sizeof(PixelType);
+ f->pixData = new Uint8[f->length];
+ memcpy(f->pixData, data, f->length);
+ m_Map.m_Frames.push_back(f.release());
+ OFVector<FGBase*>::const_iterator fg = perFrameInformation.begin();
+ while ( result.good() && (fg != perFrameInformation.end()) )
+ {
+ result = m_Map.m_FGInterface.addPerFrame(m_Map.m_Frames.size(), **fg);
+ if (result.bad())
+ {
+ DCMPMAP_ERROR("Could not add functional group: " << DcmFGTypes::FGType2OFString((*fg)->getType()));
+ break;
+ }
+ ++fg;
+ }
+ }
+ }
+ }
+ // Clean up if necessary
+ if (result.bad())
+ m_Map.m_FGInterface.deleteFrame(m_Map.m_Frames.size());
+ return result;
+}
+
+
+template<typename PixelType>
+PixelType* DPMParametricMapIOD::Frames<PixelType>::getFrame(const size_t frameNumber)
+{
+ if (frameNumber < m_Map.m_Frames.size())
+ {
+ return (PixelType*)(m_Map.m_Frames[frameNumber]->pixData);
+ }
+ return NULL;
+}
+
+
+// Protected constructor
+DPMParametricMapIOD::DPMParametricMapIOD()
+: DPMParametricMapBase()
+, m_ContentIdentification()
+, m_Frames()
+{
+}
+
+
+// Protected constructor
+template<typename ImagePixel>
+DPMParametricMapIOD::DPMParametricMapIOD(OFin_place_type_t(ImagePixel))
+: DPMParametricMapBase(OFin_place<ImagePixel>)
+, m_ContentIdentification()
+, m_Frames()
+{
+}
+
+
+// Static method used to create a new Parametric Map IOD object
+template<typename ImagePixel>
+OFvariant<OFCondition,DPMParametricMapIOD> DPMParametricMapIOD::create(const OFString& modality,
+ const OFString& seriesNumber,
+ const OFString& instanceNumber,
+ const Uint16 rows,
+ const Uint16 columns,
+ const IODEnhGeneralEquipmentModule::EquipmentInfo& equipmentInfo,
+ const ContentIdentificationMacro& contentIdentification,
+ const OFString& imageFlavor,
+ const OFString& derivedPixelContrast,
+ const DPMTypes::ContentQualification& contentQualification)
+{
+ DPMParametricMapIOD map(OFin_place<ImagePixel>);
+
+ OFCondition status = SetImagePixelModuleVisitor(rows, columns)(*OFget<ImagePixel>(&map.getImagePixel()));
+ if (status.bad())
+ return status;
+
+ status = map.init
+ (
+ modality,
+ seriesNumber,
+ instanceNumber,
+ equipmentInfo,
+ contentIdentification,
+ imageFlavor,
+ derivedPixelContrast,
+ contentQualification
+ );
+
+ if(status.bad())
+ return status;
+
+ return map;
+}
+
+
+OFCondition DPMParametricMapIOD::init(const OFString& modality,
+ const OFString& seriesNumber,
+ const OFString& instanceNumber,
+ const IODEnhGeneralEquipmentModule::EquipmentInfo& equipmentInfo,
+ const ContentIdentificationMacro& contentIdentification,
+ const OFString& imageFlavor,
+ const OFString& derivedPixelContrast,
+ const DPMTypes::ContentQualification& contentQualification)
+{
+ if (!equipmentInfo.isDataComplete())
+ {
+ DCMPMAP_ERROR("Equipment info incomplete");
+ return DPM_InvalidAttributeValue;
+ }
+
+ OFCondition status = OFconst_cast(ContentIdentificationMacro*, &contentIdentification)->check();
+ if (status.bad())
+ {
+ DCMPMAP_ERROR("Content identification is invalid: " << status.text());
+ return DPM_InvalidAttributeValue;
+ }
+
+ status = OFconst_cast(ContentIdentificationMacro*, &contentIdentification)->check();
+ if (imageFlavor.empty() || derivedPixelContrast.empty())
+ {
+ DCMPMAP_ERROR
+ (
+ "Image Type value 3 (Image Flavor) and 4 (Derived Pixel Contrast) must be set but are "
+ << imageFlavor << "/" << derivedPixelContrast
+ );
+ return DPM_InvalidAttributeValue;
+ }
+
+ if (!DPMTypes::cqValid(contentQualification))
+ {
+ DCMPMAP_ERROR("Content Qualification not set");
+ return DPM_InvalidAttributeValue;
+ }
+
+ // All data is valid, copy to object
+ status = getIODEnhGeneralEquipmentModule().set(equipmentInfo);
+ if (status.bad())
+ {
+ DCMPMAP_ERROR("Error setting equipment info: " << status.text());
+ return DPM_InvalidAttributeValue;
+ }
+
+ m_ContentIdentification = contentIdentification;
+ OFStringStream ss;
+ ss << "DERIVED\\PRIMARY\\" << imageFlavor << "\\" << derivedPixelContrast;
+ OFSTRINGSTREAM_GETOFSTRING(ss, imgType);
+
+ status = getIODGeneralImageModule().setImageType(imgType);
+ if (status.bad())
+ {
+ DCMPMAP_ERROR("Error setting Image Type: " << status.text());
+ return DPM_InvalidAttributeValue;
+ }
+
+ status = m_DPMParametricMapSeriesModule.setModality(modality);
+ if (status.bad())
+ {
+
+ DCMPMAP_ERROR("Could not set modality value \"" << modality << "\": " << status.text());
+ return DPM_InvalidAttributeValue;
+ }
+
+ status = m_DPMParametricMapSeriesModule.setSeriesNumber(seriesNumber);
+ if (status.bad())
+ {
+ DCMPMAP_ERROR("Could not set Series Number: " << status.text());
+ return DPM_InvalidAttributeValue;
+ }
+
+ status = m_IODMultiFrameFGModule.setInstanceNumber(instanceNumber);
+ if (status.bad())
+ return status;
+
+ m_DPMParametricMapImageModule.setContentQualification(DPMTypes::cq2Str(contentQualification));
+ m_DPMParametricMapImageModule.setRecognizableVisualFeatures("YES");
+ m_DPMParametricMapImageModule.setBurnedInAnnotation("NO");
+ m_DPMParametricMapImageModule.setLossyImageCompression("00");
+ m_DPMParametricMapImageModule.setPresentationLUTShape("IDENTITY");
+ getSOPCommon().setSOPClassUID(UID_ParametricMapStorage);
+ DcmIODUtil::setContentDateAndTimeNow(m_IODMultiFrameFGModule);
+
+ return EC_Normal;
+}
+
+
+OFCondition DPMParametricMapIOD::read(DcmItem& dataset)
+{
+ return OFvisit<OFCondition>(ReadVisitor(dataset,*this),getImagePixel());
+
+}
+
+
+OFCondition DPMParametricMapIOD::write(DcmItem& dataset)
+{
+ if (!check())
+ return DPM_InvalidAttributeValue;
+ return OFvisit<OFCondition>(WriteVisitor(dataset,*this),getImagePixel());
+}
+
+
+OFvariant<OFCondition,DPMParametricMapIOD*> DPMParametricMapIOD::loadDataset(DcmDataset& dataset)
+{
+ OFString sopClass;
+ DPMParametricMapIOD *map = NULL;
+ if (dataset.findAndGetOFStringArray(DCM_SOPClassUID, sopClass).good())
+ {
+ if (sopClass == UID_ParametricMapStorage)
+ {
+ DcmElement *elem = NULL;
+ if (dataset.findAndGetElement(DCM_PixelData, elem).good())
+ {
+ Uint16 pr = 0;
+ if (dataset.findAndGetUint16(DCM_PixelRepresentation, pr).good())
+ {
+ if (pr == 0)
+ {
+ map = new DPMParametricMapIOD(OFin_place<IODImagePixelModule<Uint16> >);
+ }
+ else
+ {
+ map = new DPMParametricMapIOD(OFin_place<IODImagePixelModule<Sint16> >);
+ }
+ }
+ else
+ {
+ DCMPMAP_WARN("Pixel Data element found but no Pixel Representation set, assuming 16 bit unsigned integer data");
+ map = new DPMParametricMapIOD(OFin_place<IODImagePixelModule<Uint16> >);
+ }
+ }
+ else if (dataset.findAndGetElement(DCM_FloatPixelData, elem).good())
+ {
+ map = new DPMParametricMapIOD(OFin_place<IODFloatingPointImagePixelModule>);
+ }
+ else if (dataset.findAndGetElement(DCM_DoubleFloatPixelData, elem).good())
+ {
+ map = new DPMParametricMapIOD(OFin_place<IODDoubleFloatingPointImagePixelModule>);
+ }
+ else
+ {
+ return DPM_NoPixelData;
+ }
+ if (map == NULL)
+ {
+ return EC_MemoryExhausted;
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("Invalid SOP Class: " << sopClass << ", only Parametric Map Storage (1.2.840.10008.5.1.4.1.1.30) supported");
+ return DPM_InvalidSOPClass;
+ }
+ }
+ OFCondition result = OFvisit<OFCondition>(ReadVisitor(dataset, *map), map->getImagePixel());
+ if (result.good())
+ return map;
+ else
+ return result;
+}
+
+
+OFvariant<OFCondition,DPMParametricMapIOD*> DPMParametricMapIOD::loadFile(const OFString& filename)
+{
+ DcmFileFormat dcmff;
+ OFCondition cond = dcmff.loadFile(filename.c_str());
+ OFvariant<OFCondition,DPMParametricMapIOD*> result;
+ if (cond.good())
+ {
+ result = loadDataset( *(dcmff.getDataset()) );
+ return result;
+ }
+ else
+ {
+ return cond;
+ }
+}
+
+
+DPMParametricMapIOD::~DPMParametricMapIOD()
+{
+ DcmIODUtil::freeContainer(m_Frames);
+ // nothing else to do for now
+}
+
+
+OFCondition DPMParametricMapIOD::addForAllFrames(const FGBase& group)
+{
+ return m_FGInterface.addShared(group);
+}
+
+
+OFBool DPMParametricMapIOD::check()
+{
+ OFString val;
+ m_DPMParametricMapImageModule.getRecognizableVisualFeatures(val);
+ if (DPMTypes::rvfValid(DPMTypes::str2Rvf(val)))
+ {
+ m_DPMParametricMapImageModule.getContentQualification(val);
+ if (DPMTypes::cqValid(DPMTypes::str2Cq(val)))
+ {
+ if (!m_Frames.empty())
+ {
+ return OFTrue;
+ }
+ else
+ {
+ DCMPMAP_ERROR("No frame data defined in Parametric Map");
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("Invalid value for Recognizable Visual Features: " << val);
+ }
+ }
+ else
+ {
+ DCMPMAP_ERROR("Invalid value for Content Qualification" << val);
+ }
+ return OFFalse;
+}
+
+
+OFCondition DPMParametricMapIOD::getColumns(Uint16& cols)
+{
+ return getImagePixel().getColumns(cols);
+}
+
+
+OFCondition DPMParametricMapIOD::getRows(Uint16& rows)
+{
+ return getImagePixel().getRows(rows);
+}
+
+
+size_t DPMParametricMapIOD::getNumberOfFrames() const
+{
+ return OFconst_cast(DPMParametricMapIOD*,this)->m_FGInterface.getNumberOfFrames();
+}
+
+
+OFCondition DPMParametricMapIOD::setRecognizableVisualFeatures(const DPMTypes::RecognizableVisibleFeatures yesOrNo)
+{
+ return DPMTypes::rvfValid(yesOrNo)
+ ?
+ m_DPMParametricMapImageModule.setRecognizableVisualFeatures(DPMTypes::rvf2Str(yesOrNo))
+ :
+ DPM_InvalidAttributeValue
+ ;
+}
+
+
+OFCondition DPMParametricMapIOD::readGeneric(DcmItem& dataset)
+{
+ OFCondition result = DPMParametricMapBase::read(dataset);
+ if (result.good())
+ result = m_ContentIdentification.read(dataset);
+ return result;
+}
+
+
+OFCondition DPMParametricMapIOD::writeGeneric(DcmItem& dataset)
+{
+ getFrameOfReference().ensureFrameOfReferenceUID();
+ m_IODMultiFrameFGModule.setNumberOfFrames(m_Frames.size());
+ OFCondition result = m_ContentIdentification.write(dataset);
+ if (result.good())
+ {
+ result = DPMParametricMapBase::write(dataset);
+ }
+ return result;
+}
+
+
+DPMTypes::ContentQualification DPMParametricMapIOD::getContentQualification()
+{
+ OFString val;
+ m_DPMParametricMapImageModule.getContentQualification(val);
+ return DPMTypes::str2Cq(val);
+}
+
+
+DPMTypes::RecognizableVisibleFeatures DPMParametricMapIOD::getRecognizableVisualFeatures()
+{
+ OFString val;
+ DPMParametricMapIOD::m_DPMParametricMapImageModule.getRecognizableVisualFeatures(val);
+ return DPMTypes::str2Rvf(val);
+}
+
+
+DPMParametricMapIOD::FramesType DPMParametricMapIOD::getFrames()
+{
+ return OFvisit<FramesType>(GetFramesVisitor(*this),getImagePixel());
+}
+
+
+OFCondition DPMParametricMapIOD::decompress(DcmDataset& dset)
+{
+ DcmXfer xfer = dset.getOriginalXfer();
+ OFCondition result;
+ // If the original transfer syntax could have been lossy, print warning
+ if (dset.hasRepresentation(EXS_LittleEndianExplicit, NULL))
+ {
+ if ( xfer.isEncapsulated() && (xfer.getXfer() != EXS_RLELossless) && (xfer.getXfer() != EXS_DeflatedLittleEndianExplicit) )
+ {
+ DCMPMAP_WARN("Dataset has been compressed using a (possibly) lossy compression scheme (ignored)");
+ }
+ }
+ // If the original transfer is encapsulated and we do not already have an uncompressed version, decompress or reject the file
+ else if (xfer.isEncapsulated())
+ {
+ // RLE compression is fine (truly lossless). Deflated is handled internally by DCMTK.
+ if (xfer.getXfer() == EXS_RLELossless)
+ {
+ DCMPMAP_DEBUG("DICOM file is RLE-compressed, converting to uncompressed transfer syntax first");
+ result = DcmIODUtil::decompress(dset);
+ }
+ else // We do not accept any transfer syntax that could be lossy compressed
+ {
+ DCMPMAP_ERROR("Transfer syntax " << DcmXfer(xfer).getXferName() << " uses lossy compression, not supported for Parametric Map objects!");
+ result = IOD_EC_CannotDecompress;
+ }
+ }
+ return result;
+}
+
+// Explicit instantiations using all permitted Parametric Map data types
+template class DPMParametricMapIOD::Frames<Uint16>;
+template class DPMParametricMapIOD::Frames<Sint16>;
+template class DPMParametricMapIOD::Frames<Float32>;
+template class DPMParametricMapIOD::Frames<Float64>;
+
+// Helper macro to not to write the same thing multiple times
+#define INSTANTIATE_CREATE(T) template DCMTK_DCMPMAP_EXPORT OFvariant<OFCondition,DPMParametricMapIOD>\
+DPMParametricMapIOD::create<T >(const OFString& modality,\
+ const OFString& seriesNumber,\
+ const OFString& instanceNumber,\
+ const Uint16 rows,\
+ const Uint16 columns,\
+ const IODEnhGeneralEquipmentModule::EquipmentInfo& equipmentInfo,\
+ const ContentIdentificationMacro& contentIdentification,\
+ const OFString& imageFlavor,\
+ const OFString& derivedPixelContrast,\
+ const DPMTypes::ContentQualification& contentQualification)
+
+// Instantiate all four permitted create() methods
+INSTANTIATE_CREATE(IODImagePixelModule<Uint16>);
+INSTANTIATE_CREATE(IODImagePixelModule<Sint16>);
+INSTANTIATE_CREATE(IODFloatingPointImagePixelModule);
+INSTANTIATE_CREATE(IODDoubleFloatingPointImagePixelModule);
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, Open Connections GmbH
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmpmap
+ *
+ * Author: Michael Onken
+ *
+ * Purpose: Class for managing common paramatric map specific types.
+ *
+ */
+
+#include "dcmtk/config/osconfig.h"
+#include "dcmtk/dcmdata/dcerror.h"
+#include "dcmtk/dcmpmap/dpmtypes.h"
+
+OFLogger DCM_dcmpmapLogger = OFLog::getLogger("dcmtk.dcmpmap");
+
+/*---------------------------------*
+ * constant definitions
+ *---------------------------------*/
+
+// conditions
+makeOFConditionConst(DPM_InvalidDimensions, OFM_dcmpmap, 1, OF_error, "Invalid Dimensions");
+makeOFConditionConst(DPM_InvalidAttributeValue, OFM_dcmpmap, 2, OF_error, "Invalid Attribute Value");
+makeOFConditionConst(DPM_InvalidPixelInfo, OFM_dcmpmap, 3, OF_error, "Invalid information in pixel data or related attributes");
+makeOFConditionConst(DPM_InvalidPixelData, OFM_dcmpmap, 4, OF_error, "Invalid pixel data");
+makeOFConditionConst(DPM_NoPixelData, OFM_dcmpmap, 5, OF_error, "No pixel data found");
+makeOFConditionConst(DPM_InvalidSOPClass, OFM_dcmpmap, 6, OF_error, "SOP Class not supported");
+
+OFString DPMTypes::rvf2Str(const RecognizableVisibleFeatures rvf)
+{
+ switch (rvf)
+ {
+ case RVF_NO: return "NO";
+ case RVF_YES: return "YES";
+ default: return "";
+ }
+}
+
+DPMTypes::RecognizableVisibleFeatures DPMTypes::str2Rvf(const OFString& rvf)
+{
+ if (rvf == "NO")
+ return RVF_NO;
+ if (rvf == "YES")
+ return RVF_YES;
+ else
+ return RVF_UNKNOWN;
+}
+
+
+OFString DPMTypes::cq2Str(const DPMTypes::ContentQualification cq)
+{
+ switch (cq)
+ {
+ case CQ_PRODUCT: return "PRODUCT";
+ case CQ_RESEARCH: return "RESEARCH";
+ case CQ_SERVICE: return "SERVICE";
+ case CQ_UNKNOWN: return "";
+ }
+ return "";
+}
+
+
+DPMTypes::ContentQualification DPMTypes::str2Cq(const OFString& cq)
+{
+ if (cq == "PRODUCT")
+ return CQ_PRODUCT;
+ if (cq == "RESEARCH")
+ return CQ_RESEARCH;
+ if (cq == "SERVICE")
+ return CQ_SERVICE;
+ else
+ return CQ_UNKNOWN;
+}
+
+
+
+OFBool DPMTypes::cqValid(const DPMTypes::ContentQualification cq)
+{
+ switch (cq)
+ {
+ case CQ_PRODUCT:
+ case CQ_RESEARCH:
+ case CQ_SERVICE: return OFTrue;
+ case CQ_UNKNOWN: return OFFalse;
+ }
+ return OFFalse;
+}
+
+
+OFBool DPMTypes::rvfValid(const DPMTypes::RecognizableVisibleFeatures rvf)
+{
+ switch (rvf)
+ {
+ case RVF_NO: return OFTrue;
+ case RVF_YES: return OFTrue;
+ case RVF_UNKNOWN: return OFFalse;
+ }
+ return OFFalse;
+}
+
--- /dev/null
+dump_pmp.o: dump_pmp.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapiod.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fginterface.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgtypes.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgdefine.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgderimg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgfracon.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframeanatomy.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframevoilut.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgidentpixeltransform.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgparametricmapframetype.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgpixmsr.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanor.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanpo.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgrealworldvaluemapping.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcommn.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatient.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatientstudy.h \
+ ../../ofstd/include/dcmtk/ofstd/ofoption.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralseries.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfor.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modsopcommon.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodreferences.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralimage.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modacquisitioncontext.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modenhequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframefg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixel.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfloatingpointimagepixel.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapimage.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapseries.h \
+ ../include/dcmtk/dcmpmap/dpmtypes.h
+make_pmp.o: make_pmp.cc ../../ofstd/include/dcmtk/ofstd/oftest.h \
+ ../../config/include/dcmtk/config/osconfig.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodutil.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapiod.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fginterface.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgtypes.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgdefine.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgderimg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgfracon.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframeanatomy.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframevoilut.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgidentpixeltransform.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgparametricmapframetype.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgpixmsr.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanor.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanpo.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgrealworldvaluemapping.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcommn.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatient.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatientstudy.h \
+ ../../ofstd/include/dcmtk/ofstd/ofoption.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralseries.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfor.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modsopcommon.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodreferences.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralimage.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modacquisitioncontext.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modenhequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframefg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixel.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfloatingpointimagepixel.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapimage.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapseries.h \
+ ../include/dcmtk/dcmpmap/dpmtypes.h
+rw_pmp.o: rw_pmp.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapiod.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modbase.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmem.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodtypes.h \
+ ../../dcmiod/include/dcmtk/dcmiod/cielabutil.h \
+ ../include/dcmtk/dcmpmap/dpmparametricmapbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fginterface.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgtypes.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgdefine.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fg.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgbase.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgderimg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgfracon.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframeanatomy.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgframevoilut.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgidentpixeltransform.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgparametricmapframetype.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgpixmsr.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanor.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgplanpo.h \
+ ../../dcmfg/include/dcmtk/dcmfg/fgrealworldvaluemapping.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodcommn.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatient.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modpatientstudy.h \
+ ../../ofstd/include/dcmtk/ofstd/ofoption.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralseries.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfor.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modsopcommon.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h \
+ ../../dcmiod/include/dcmtk/dcmiod/iodreferences.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modgeneralimage.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modacquisitioncontext.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modenhequipment.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modmultiframefg.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixel.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modfloatingpointimagepixel.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapimage.h \
+ ../include/dcmtk/dcmpmap/dpmdef.h \
+ ../include/dcmtk/dcmpmap/dpmmodparametricmapseries.h \
+ ../include/dcmtk/dcmpmap/dpmtypes.h
+tests.o: tests.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../../ofstd/include/dcmtk/ofstd/oftest.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h
--- /dev/null
+#
+# Makefile for dcmpmap/tests
+#
+
+@SET_MAKE@
+
+SHELL = /bin/sh
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+configdir = @top_srcdir@/@configdir@
+
+include $(configdir)/@common_makefile@
+
+
+all:
+
+check:
+
+check-exhaustive:
+
+install:
+
+clean:
+ rm -f $(TRASH)
+
+distclean:
+ rm -f $(DISTTRASH)
+
+dependencies:
{
currentName = dp->d_name;
#endif
- if ((prefix == currentName.substr(0, prefixSize)) &&
- (currentName.size() > postfixSize) &&
- (postfix == currentName.substr(currentName.size()-postfixSize)))
+ if
+ (
+ currentName.size() > (prefixSize + postfixSize) &&
+ prefix == currentName.substr(0, prefixSize) &&
+ postfix == currentName.substr(currentName.size()-postfixSize) &&
+ currentName.find_first_not_of("1234567890",prefixSize) == (currentName.size() - postfixSize)
+ )
{
// name matches pattern
jobName = spoolFolder;
DVPSInstanceType type = DVPSI_image;
if (record.Modality != NULL)
{
- if (strcmp(record.Modality, "PR") == 0)
+ if (DSRTypes::sopClassUIDToDocumentType(record.SOPClassUID) != DSRTypes::DT_invalid)
+ type = DVPSI_structuredReport;
+ else if (strcmp(record.Modality, "PR") == 0)
type = DVPSI_presentationState;
- if (strcmp(record.Modality, "SR") == 0)
+ else if (strcmp(record.Modality, "SR") == 0)
type = DVPSI_structuredReport;
else if (strcmp(record.Modality, "HC") == 0)
type =DVPSI_hardcopyGrayscale;
else if (strcmp(record.Modality, "STORED_PRINT") == 0)
type = DVPSI_storedPrint;
}
- series->List.addItem(record.SOPInstanceUID, counter, record.hstat, type, record.ImageSize, record.filename);
+ series->List.addItem(record.SOPInstanceUID,
+ counter,
+ OFstatic_cast(DVIFhierarchyStatus, record.hstat),
+ type,
+ record.ImageSize,
+ record.filename);
if (series->Type == DVPSI_image)
series->Type = type; // series contains only one type of instances
}
lockDatabase();
OFBool wasNew = newInstancesReceived();
if (pHandle == NULL) return EC_IllegalCall;
+ pHandle->DB_unlock();
OFCondition result = pHandle->instanceReviewed(pos);
+ pHandle->DB_lock(OFFalse);
if (!wasNew) resetDatabaseReferenceTime();
releaseDatabase();
return result;
DcmFileFormat *&fileformat)
{
fileformat = new DcmFileFormat;
- OFCondition result = fileformat->loadFile(filename);
+ OFCondition result = fileformat->loadFile(OFFilename(filename,OFTrue));
if (result.bad())
{
RETIRED_StandalonePETCurveStorage 1.2.840.10008.5.1.4.1.1.129
EnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.130
BasicStructuredDisplayStorage 1.2.840.10008.5.1.4.1.1.131
+CTDefinedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.1
+CTPerformedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.2
RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
#define SIZEOF_IDXRECORD (sizeof (IdxRecord))
#define SIZEOF_STUDYDESC (sizeof (StudyDescRecord) * MAX_MAX_STUDIES)
+struct DCMTK_DCMQRDB_EXPORT DB_SerializedTagKey
+{
+ inline DB_SerializedTagKey() {}
+ inline DB_SerializedTagKey(const DcmTagKey& rhs) { *this = rhs; }
+ inline DB_SerializedTagKey& operator=(const DcmTagKey& tk) { key[0] = tk.getGroup(); key[1] = tk.getElement(); return *this; }
+ inline operator DcmTagKey() const { return DcmTagKey( key[0], key[1] ); }
+ inline bool operator==(const DB_SerializedTagKey& rhs) const { return key[0] == rhs.key[0] && key[1] == rhs.key[1]; }
+ Uint16 key[2];
+};
+
+struct DCMTK_DCMQRDB_EXPORT DB_SerializedCharPtr
+{
+ inline DB_SerializedCharPtr(char* p) { ptr.p = p; }
+ inline DB_SerializedCharPtr& operator=(char* p) { ptr.p = p; return *this; }
+ inline operator char*() const { return ptr.p; }
+ union
+ {
+ char* p;
+ Uint64 placeholder;
+ } ptr ;
+};
+
/** this class provides a primitive interface for handling a flat DICOM element,
* similar to DcmElement, but only for use within the database module
*/
DB_SmallDcmElmt();
/// pointer to the value field
- char* PValueField ;
+ DB_SerializedCharPtr PValueField ;
/// value length in bytes
Uint32 ValueLength ;
/// attribute tag
- DcmTagKey XTag ;
+ DB_SerializedTagKey XTag ;
private:
/// private undefined copy constructor
char StudyInstanceUID [UI_MAX_LENGTH+1] ;
/// combined size (in bytes) of all images of this study in the database
- long StudySize ;
+ Uint32 StudySize ;
/// timestamp for last update of this study. Format: output of time(2) converted to double.
double LastRecordedDate ;
/// number of images of this study in the database
- int NumberofRegistratedImages ;
+ Uint32 NumberofRegistratedImages ;
};
struct DCMTK_DCMQRDB_EXPORT ImagesofStudyArray
{
- int idxCounter ;
+ Uint32 idxCounter ;
double RecordedDate ;
- long ImageSize ;
+ Uint32 ImageSize ;
};
char PerformingPhysicianName [PN_MAX_LENGTH+1] ;
char PresentationLabel [CS_LABEL_MAX_LENGTH+1] ;
- DVIFhierarchyStatus hstat;
+ char hstat;
// Not related to any particular DICOM attribute !
char InstanceDescription [DESCRIPTION_MAX_LENGTH+1] ;
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfes.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmls.h \
- ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
- ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtmls.h ../include/dcmtk/dcmrt/seq/drtoas.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h \
../include/dcmtk/dcmrt/seq/drtpsics.h \
../include/dcmtk/dcmrt/seq/drtpscs.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpsss.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrcs.h ../include/dcmtk/dcmrt/seq/drtcs.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h ../include/dcmtk/dcmrt/seq/drtrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h \
../include/dcmtk/dcmrt/seq/drtrdros.h \
../include/dcmtk/dcmrt/seq/drtrwvms.h \
../include/dcmtk/dcmrt/seq/drtqds.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
../include/dcmtk/dcmrt/seq/drtrfors.h \
../include/dcmtk/dcmrt/seq/drtrsts.h \
- ../include/dcmtk/dcmrt/seq/drtrses.h \
- ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../include/dcmtk/dcmrt/seq/drtssrs.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h ../include/dcmtk/dcmrt/drtimage.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h ../include/dcmtk/dcmrt/drtimage.h \
../include/dcmtk/dcmrt/seq/drtcbars.h \
../include/dcmtk/dcmrt/seq/drtads.h ../include/dcmtk/dcmrt/seq/drtbas.h \
../include/dcmtk/dcmrt/seq/drtds.h ../include/dcmtk/dcmrt/seq/drtes.h \
../include/dcmtk/dcmrt/seq/drtbl5.h ../include/dcmtk/dcmrt/seq/drtgas.h \
../include/dcmtk/dcmrt/seq/drtpfms.h ../include/dcmtk/dcmrt/seq/drtfms.h \
../include/dcmtk/dcmrt/seq/drtmacds.h \
- ../include/dcmtk/dcmrt/seq/drtcss.h \
+ ../include/dcmtk/dcmrt/seq/drtcss.h ../include/dcmtk/dcmrt/seq/drtrims.h \
../include/dcmtk/dcmrt/seq/drtrrtps5.h \
+ ../include/dcmtk/dcmrt/seq/drtsis.h ../include/dcmtk/dcmrt/seq/drtsins.h \
../include/dcmtk/dcmrt/seq/drtvls.h ../include/dcmtk/dcmrt/drtplan.h \
../include/dcmtk/dcmrt/seq/drtass.h ../include/dcmtk/dcmrt/seq/drtbads.h \
../include/dcmtk/dcmrt/seq/drtchs.h ../include/dcmtk/dcmrt/seq/drtbcps.h \
../include/dcmtk/dcmrt/seq/drtbldts.h \
../include/dcmtk/dcmrt/seq/drttms9.h ../include/dcmtk/dcmrt/drtstrct.h \
../include/dcmtk/dcmrt/seq/drtrros.h \
- ../include/dcmtk/dcmrt/seq/drtarics.h \
../include/dcmtk/dcmrt/seq/drtrpps.h \
../include/dcmtk/dcmrt/seq/drtrecs.h \
- ../include/dcmtk/dcmrt/seq/drtrics.h ../include/dcmtk/dcmrt/seq/drtrrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrics.h \
+ ../include/dcmtk/dcmrt/seq/drtsptcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrrs.h \
../include/dcmtk/dcmrt/seq/drtrrros.h \
../include/dcmtk/dcmrt/seq/drtspccs.h ../include/dcmtk/dcmrt/drttreat.h \
../include/dcmtk/dcmrt/seq/drtfgss.h \
../include/dcmtk/dcmrt/seq/drttscds.h \
../include/dcmtk/dcmrt/seq/drttsmds.h ../include/dcmtk/dcmrt/drtionpl.h \
../include/dcmtk/dcmrt/seq/drtibs.h ../include/dcmtk/dcmrt/seq/drtas6.h \
+ ../include/dcmtk/dcmrt/seq/drtddps.h \
../include/dcmtk/dcmrt/seq/drtiblds.h \
../include/dcmtk/dcmrt/seq/drtibls.h ../include/dcmtk/dcmrt/seq/drtbss.h \
../include/dcmtk/dcmrt/seq/drticps.h \
../include/dcmtk/dcmrt/seq/drttsibs.h \
../include/dcmtk/dcmrt/seq/drtas7.h \
../include/dcmtk/dcmrt/seq/drtbldls.h \
+ ../include/dcmtk/dcmrt/seq/drtdddps.h \
../include/dcmtk/dcmrt/seq/drticpds.h \
../include/dcmtk/dcmrt/seq/drtcpas.h \
../include/dcmtk/dcmrt/seq/drtlsds7.h ../include/dcmtk/dcmrt/seq/drtos.h \
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDoseIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/seq/drtcsis.h" // for CodingSchemeIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcctus.h" // for ConsentForClinicalTrialUseSequence
#include "dcmtk/dcmrt/seq/drtcpis.h" // for ConsultingPhysicianIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtcgis.h" // for ContextGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtces.h" // for ContributingEquipmentSequence
#include "dcmtk/dcmrt/seq/drtcsas.h" // for ConversionSourceAttributesSequence
#include "dcmtk/dcmrt/seq/drtdvhs.h" // for DVHSequence
#include "dcmtk/dcmrt/seq/drtdss.h" // for DigitalSignaturesSequence
#include "dcmtk/dcmrt/seq/drteas.h" // for EncryptedAttributesSequence
#include "dcmtk/dcmrt/seq/drtfes.h" // for FrameExtractionSequence
+#include "dcmtk/dcmrt/seq/drtgpis.h" // for GroupOfPatientsIdentificationSequence
#include "dcmtk/dcmrt/seq/drthsdrs.h" // for HL7StructuredDocumentReferenceSequence
#include "dcmtk/dcmrt/seq/drtiis.h" // for IconImageSequence
#include "dcmtk/dcmrt/seq/drtians.h" // for IssuerOfAccessionNumberSequence
#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
#include "dcmtk/dcmrt/seq/drtiseis.h" // for IssuerOfServiceEpisodeIDSequence
#include "dcmtk/dcmrt/seq/drtmps.h" // for MACParametersSequence
+#include "dcmtk/dcmrt/seq/drtmris.h" // for MappingResourceIdentificationSequence
#include "dcmtk/dcmrt/seq/drtmls.h" // for ModalityLUTSequence
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
#include "dcmtk/dcmrt/seq/drtoas.h" // for OriginalAttributesSequence
#include "dcmtk/dcmrt/seq/drtopis.h" // for OtherPatientIDsSequence
#include "dcmtk/dcmrt/seq/drtpbcs.h" // for PatientBreedCodeSequence
#include "dcmtk/dcmrt/seq/drtrwvms.h" // for RealWorldValueMappingSequence
#include "dcmtk/dcmrt/seq/drtrppcs.h" // for ReasonForPerformedProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrfors.h" // for ReferencedFrameOfReferenceSequence
-#include "dcmtk/dcmrt/seq/drtrims.h" // for ReferencedImageSequence
#include "dcmtk/dcmrt/seq/drtris.h" // for ReferencedInstanceSequence
#include "dcmtk/dcmrt/seq/drtrpphs.h" // for ReferencedPatientPhotoSequence
#include "dcmtk/dcmrt/seq/drtrps.h" // for ReferencedPatientSequence
#include "dcmtk/dcmrt/seq/drtras.h" // for RequestAttributesSequence
#include "dcmtk/dcmrt/seq/drtrscs.h" // for RequestingServiceCodeSequence
#include "dcmtk/dcmrt/seq/drtsdcs.h" // for SeriesDescriptionCodeSequence
-#include "dcmtk/dcmrt/seq/drtsis.h" // for SourceImageSequence
+#include "dcmtk/dcmrt/seq/drtspgis.h" // for SourcePatientGroupIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtscs.h" // for StrainCodeSequence
+#include "dcmtk/dcmrt/seq/drtsss.h" // for StrainStockSequence
#include "dcmtk/dcmrt/seq/drtssrs.h" // for StructureSetROISequence
#include "dcmtk/dcmrt/seq/drtscris.h" // for StudiesContainingOtherReferencedInstancesSequence
+#include "dcmtk/dcmrt/seq/drtudis.h" // for UDISequence
/** Interface class for RTDoseIOD
*/
virtual OFCondition getAdmittingDiagnosesDescription(OFString &value, const signed long pos = 0) const;
+ /** get Allergies (0010,2110)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getAllergies(OFString &value, const signed long pos = 0) const;
+
/** get AuthorizationEquipmentCertificationNumber (0100,0426)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getClinicalTrialTimePointID(OFString &value, const signed long pos = 0) const;
+ /** get ColorSpace (0028,2002)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getColorSpace(OFString &value, const signed long pos = 0) const;
+
/** get Columns (0028,0011)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
*/
virtual OFCondition getDeidentificationMethod(OFString &value, const signed long pos = 0) const;
- /** get DerivationDescription (0008,2111)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition getDerivationDescription(OFString &value, const signed long pos = 0) const;
-
/** get DeviceSerialNumber (0018,1000)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getLargestImagePixelValue(Uint16 &value, const unsigned long pos = 0) const;
+ /** get LastMenstrualDate (0010,21d0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLastMenstrualDate(OFString &value, const signed long pos = 0) const;
+
/** get LongitudinalTemporalInformationModified (0028,0303)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MedicalAlerts (0010,2000)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMedicalAlerts(OFString &value, const signed long pos = 0) const;
+
/** get Modality (0008,0060)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientAge(OFString &value, const signed long pos = 0) const;
+ /** get PatientAlternativeCalendar (0010,0035)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthDate (0010,0030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthDate(OFString &value, const signed long pos = 0) const;
+ /** get PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthTime (0010,0032)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthTime(OFString &value, const signed long pos = 0) const;
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientBreedDescription (0010,2292)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientComments(OFString &value, const signed long pos = 0) const;
+ /** get PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientID (0010,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientSpeciesDescription(OFString &value, const signed long pos = 0) const;
+ /** get PatientState (0038,0500)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientState(OFString &value, const signed long pos = 0) const;
+
/** get PatientWeight (0010,1030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPositionReferenceIndicator(OFString &value, const signed long pos = 0) const;
+ /** get PregnancyStatus (0010,21c0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPregnancyStatus(Uint16 &value, const unsigned long pos = 0) const;
+
/** get PresentationLUTShape (2050,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getSmallestImagePixelValue(Uint16 &value, const unsigned long pos = 0) const;
+ /** get SmokingStatus (0010,21a0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSmokingStatus(OFString &value, const signed long pos = 0) const;
+
/** get SoftwareVersions (0018,1020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getStereoPairsPresent(OFString &value, const signed long pos = 0) const;
+ /** get StrainAdditionalInformation (0010,0218)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainAdditionalInformation(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainDescription (0010,0212)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainNomenclature (0010,0213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainNomenclature(OFString &value, const signed long pos = 0) const;
+
/** get StructureSetDate (3006,0008)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTConsultingPhysicianIdentificationSequence &getConsultingPhysicianIdentificationSequence() const
{ return ConsultingPhysicianIdentificationSequence; }
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return reference to sequence element
+ */
+ DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence()
+ { return ContextGroupIdentificationSequence; }
+
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return const reference to sequence element
+ */
+ const DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence() const
+ { return ContextGroupIdentificationSequence; }
+
/** get ContributingEquipmentSequence (0018,a001)
* @return reference to sequence element
*/
const DRTFrameExtractionSequence &getFrameExtractionSequence() const
{ return FrameExtractionSequence; }
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return reference to sequence element
+ */
+ DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence()
+ { return GroupOfPatientsIdentificationSequence; }
+
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return const reference to sequence element
+ */
+ const DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence() const
+ { return GroupOfPatientsIdentificationSequence; }
+
/** get HL7StructuredDocumentReferenceSequence (0040,a390)
* @return reference to sequence element
*/
const DRTMACParametersSequence &getMACParametersSequence() const
{ return MACParametersSequence; }
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return reference to sequence element
+ */
+ DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence()
+ { return MappingResourceIdentificationSequence; }
+
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return const reference to sequence element
+ */
+ const DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence() const
+ { return MappingResourceIdentificationSequence; }
+
/** get ModalityLUTSequence (0028,3000)
* @return reference to sequence element
*/
const DRTModalityLUTSequence &getModalityLUTSequence() const
{ return ModalityLUTSequence; }
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
/** get OriginalAttributesSequence (0400,0561)
* @return reference to sequence element
*/
const DRTReferencedFrameOfReferenceSequence &getReferencedFrameOfReferenceSequence() const
{ return ReferencedFrameOfReferenceSequence; }
- /** get ReferencedImageSequence (0008,1140)
- * @return reference to sequence element
- */
- DRTReferencedImageSequence &getReferencedImageSequence()
- { return ReferencedImageSequence; }
-
- /** get ReferencedImageSequence (0008,1140)
- * @return const reference to sequence element
- */
- const DRTReferencedImageSequence &getReferencedImageSequence() const
- { return ReferencedImageSequence; }
-
/** get ReferencedInstanceSequence (0008,114a)
* @return reference to sequence element
*/
const DRTSeriesDescriptionCodeSequence &getSeriesDescriptionCodeSequence() const
{ return SeriesDescriptionCodeSequence; }
- /** get SourceImageSequence (0008,2112)
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return reference to sequence element
+ */
+ DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence()
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return const reference to sequence element
+ */
+ const DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence() const
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return reference to sequence element
+ */
+ DRTStrainCodeSequence &getStrainCodeSequence()
+ { return StrainCodeSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return const reference to sequence element
+ */
+ const DRTStrainCodeSequence &getStrainCodeSequence() const
+ { return StrainCodeSequence; }
+
+ /** get StrainStockSequence (0010,0216)
* @return reference to sequence element
*/
- DRTSourceImageSequence &getSourceImageSequence()
- { return SourceImageSequence; }
+ DRTStrainStockSequence &getStrainStockSequence()
+ { return StrainStockSequence; }
- /** get SourceImageSequence (0008,2112)
+ /** get StrainStockSequence (0010,0216)
* @return const reference to sequence element
*/
- const DRTSourceImageSequence &getSourceImageSequence() const
- { return SourceImageSequence; }
+ const DRTStrainStockSequence &getStrainStockSequence() const
+ { return StrainStockSequence; }
/** get StructureSetROISequence (3006,0020)
* @return reference to sequence element
const DRTStudiesContainingOtherReferencedInstancesSequence &getStudiesContainingOtherReferencedInstancesSequence() const
{ return StudiesContainingOtherReferencedInstancesSequence; }
+ /** get UDISequence (0018,100a)
+ * @return reference to sequence element
+ */
+ DRTUDISequence &getUDISequence()
+ { return UDISequence; }
+
+ /** get UDISequence (0018,100a)
+ * @return const reference to sequence element
+ */
+ const DRTUDISequence &getUDISequence() const
+ { return UDISequence; }
+
// --- set DICOM attribute values ---
/** set AccessionNumber (0008,0050)
*/
virtual OFCondition setAdmittingDiagnosesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set Allergies (0010,2110)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setAllergies(const OFString &value, const OFBool check = OFTrue);
+
/** set AuthorizationEquipmentCertificationNumber (0100,0426)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setClinicalTrialTimePointID(const OFString &value, const OFBool check = OFTrue);
+ /** set ColorSpace (0028,2002)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setColorSpace(const OFString &value, const OFBool check = OFTrue);
+
/** set Columns (0028,0011)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
*/
virtual OFCondition setDeidentificationMethod(const OFString &value, const OFBool check = OFTrue);
- /** set DerivationDescription (0008,2111)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- virtual OFCondition setDerivationDescription(const OFString &value, const OFBool check = OFTrue);
-
/** set DeviceSerialNumber (0018,1000)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setLargestImagePixelValue(const Uint16 value, const unsigned long pos = 0);
+ /** set LastMenstrualDate (0010,21d0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLastMenstrualDate(const OFString &value, const OFBool check = OFTrue);
+
/** set LongitudinalTemporalInformationModified (0028,0303)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set MeasuredAPDimension (0010,1023)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredAPDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MeasuredLateralDimension (0010,1024)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredLateralDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MedicalAlerts (0010,2000)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMedicalAlerts(const OFString &value, const OFBool check = OFTrue);
+
/** set Modality (0008,0060)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setPatientAge(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientAlternativeCalendar (0010,0035)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthDate (0010,0030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthDate(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthTime (0010,0032)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (TM) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthTime(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBodyMassIndex (0010,1022)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBodyMassIndex(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBreedDescription (0010,2292)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientComments(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientID (0010,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientSpeciesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientState (0038,0500)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientState(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientWeight (0010,1030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
virtual OFCondition setPositionReferenceIndicator(const OFString &value, const OFBool check = OFTrue);
+ /** set PregnancyStatus (0010,21c0)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPregnancyStatus(const Uint16 value, const unsigned long pos = 0);
+
/** set PresentationLUTShape (2050,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setSmallestImagePixelValue(const Uint16 value, const unsigned long pos = 0);
+ /** set SmokingStatus (0010,21a0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSmokingStatus(const OFString &value, const OFBool check = OFTrue);
+
/** set SoftwareVersions (0018,1020)
* @param value value to be set (possibly multi-valued) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
*/
virtual OFCondition setStereoPairsPresent(const OFString &value, const OFBool check = OFTrue);
+ /** set StrainAdditionalInformation (0010,0218)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainAdditionalInformation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainDescription (0010,0212)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainNomenclature (0010,0213)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainNomenclature(const OFString &value, const OFBool check = OFTrue);
+
/** set StructureSetDate (3006,0008)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
/// PatientBirthDate (0010,0030) vr=DA, vm=1, type=2
DcmDate PatientBirthDate;
+ /// PatientBirthDateInAlternativeCalendar (0010,0033) vr=LO, vm=1, type=3
+ DcmLongString PatientBirthDateInAlternativeCalendar;
+ /// PatientDeathDateInAlternativeCalendar (0010,0034) vr=LO, vm=1, type=3
+ DcmLongString PatientDeathDateInAlternativeCalendar;
+ /// PatientAlternativeCalendar (0010,0035) vr=CS, vm=1, type=1C
+ DcmCodeString PatientAlternativeCalendar;
/// PatientSex (0010,0040) vr=CS, vm=1, type=2
DcmCodeString PatientSex;
/// ReferencedPatientPhotoSequence (0010,1100) vr=SQ, vm=1, type=3
DRTPatientBreedCodeSequence PatientBreedCodeSequence;
/// BreedRegistrationSequence (0010,2294) vr=SQ, vm=1, type=2C
DRTBreedRegistrationSequence BreedRegistrationSequence;
+ /// StrainDescription (0010,0212) vr=UC, vm=1, type=3
+ DcmUnlimitedCharacters StrainDescription;
+ /// StrainNomenclature (0010,0213) vr=LO, vm=1, type=3
+ DcmLongString StrainNomenclature;
+ /// StrainCodeSequence (0010,0219) vr=SQ, vm=1, type=3
+ DRTStrainCodeSequence StrainCodeSequence;
+ /// StrainAdditionalInformation (0010,0218) vr=UT, vm=1, type=3
+ DcmUnlimitedText StrainAdditionalInformation;
+ /// StrainStockSequence (0010,0216) vr=SQ, vm=1, type=3
+ DRTStrainStockSequence StrainStockSequence;
/// ResponsiblePerson (0010,2297) vr=PN, vm=1, type=2C
DcmPersonName ResponsiblePerson;
/// ResponsiblePersonRole (0010,2298) vr=CS, vm=1, type=1C
DcmLongString DeidentificationMethod;
/// DeidentificationMethodCodeSequence (0012,0064) vr=SQ, vm=1, type=1C
DRTDeidentificationMethodCodeSequence DeidentificationMethodCodeSequence;
+ /// SourcePatientGroupIdentificationSequence (0010,0026) vr=SQ, vm=1, type=3
+ DRTSourcePatientGroupIdentificationSequence SourcePatientGroupIdentificationSequence;
+ /// GroupOfPatientsIdentificationSequence (0010,0027) vr=SQ, vm=1, type=3
+ DRTGroupOfPatientsIdentificationSequence GroupOfPatientsIdentificationSequence;
// --- ClinicalTrialSubjectModule (U) ---
DcmDecimalString PatientSize;
/// PatientWeight (0010,1030) vr=DS, vm=1, type=3
DcmDecimalString PatientWeight;
+ /// PatientBodyMassIndex (0010,1022) vr=DS, vm=1, type=3
+ DcmDecimalString PatientBodyMassIndex;
+ /// MeasuredAPDimension (0010,1023) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredAPDimension;
+ /// MeasuredLateralDimension (0010,1024) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredLateralDimension;
/// PatientSizeCodeSequence (0010,1021) vr=SQ, vm=1, type=3
DRTPatientSizeCodeSequence PatientSizeCodeSequence;
+ /// MedicalAlerts (0010,2000) vr=LO, vm=1-n, type=3
+ DcmLongString MedicalAlerts;
+ /// Allergies (0010,2110) vr=LO, vm=1-n, type=3
+ DcmLongString Allergies;
+ /// SmokingStatus (0010,21a0) vr=CS, vm=1, type=3
+ DcmCodeString SmokingStatus;
+ /// PregnancyStatus (0010,21c0) vr=US, vm=1, type=3
+ DcmUnsignedShort PregnancyStatus;
+ /// LastMenstrualDate (0010,21d0) vr=DA, vm=1, type=3
+ DcmDate LastMenstrualDate;
+ /// PatientState (0038,0500) vr=LO, vm=1, type=3
+ DcmLongString PatientState;
/// Occupation (0010,2180) vr=SH, vm=1, type=3
DcmShortString Occupation;
/// AdditionalPatientHistory (0010,21b0) vr=LT, vm=1, type=3
DRTSeriesDescriptionCodeSequence SeriesDescriptionCodeSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// ReferencedPerformedProcedureStepSequence (0008,1111) vr=SQ, vm=1, type=3
DRTReferencedPerformedProcedureStepSequence ReferencedPerformedProcedureStepSequence;
/// RequestAttributesSequence (0040,0275) vr=SQ, vm=1, type=3
DcmLongString SoftwareVersions;
/// GantryID (0018,1008) vr=LO, vm=1, type=3
DcmLongString GantryID;
+ /// UDISequence (0018,100a) vr=SQ, vm=1, type=3
+ DRTUDISequence UDISequence;
/// SpatialResolution (0018,1050) vr=DS, vm=1, type=3
DcmDecimalString SpatialResolution;
/// DateOfLastCalibration (0018,1200) vr=DA, vm=1-n, type=3
DcmTime AcquisitionTime;
/// AcquisitionDateTime (0008,002a) vr=DT, vm=1, type=3
DcmDateTime AcquisitionDateTime;
- /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
- DRTReferencedImageSequence ReferencedImageSequence;
- /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
- DcmShortText DerivationDescription;
- // DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
- // - also defined in: RTDoseModule
- // DRTDerivationCodeSequence DerivationCodeSequence;
- /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
- DRTSourceImageSequence SourceImageSequence;
- // ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
- // - also defined in: RTDoseModule
- // DRTReferencedInstanceSequence ReferencedInstanceSequence;
/// ImagesInAcquisition (0020,1002) vr=IS, vm=1, type=3
DcmIntegerString ImagesInAcquisition;
/// ImageComments (0020,4000) vr=LT, vm=1, type=3
// PixelRepresentation (0028,0103) vr=US, vm=1, type=1
// - also defined in: RTDoseModule
// DcmUnsignedShort PixelRepresentation;
- /// PixelData (7fe0,0010) vr=OB/OW, vm=1, type=1C
- DcmPixelData PixelData;
/// PlanarConfiguration (0028,0006) vr=US, vm=1, type=1C
DcmUnsignedShort PlanarConfiguration;
/// PixelAspectRatio (0028,0034) vr=IS, vm=2, type=1C
DcmOtherByteOtherWord BluePaletteColorLookupTableData;
/// ICCProfile (0028,2000) vr=OB, vm=1, type=3
DcmOtherByteOtherWord ICCProfile;
+ /// ColorSpace (0028,2002) vr=CS, vm=1, type=3
+ DcmCodeString ColorSpace;
+ /// PixelData (7fe0,0010) vr=OB/OW, vm=1, type=1C
+ DcmPixelData PixelData;
/// PixelDataProviderURL (0028,7fe0) vr=UR, vm=1, type=1C
DcmUniversalResourceIdentifierOrLocator PixelDataProviderURL;
/// PixelPaddingRangeLimit (0028,0121) vr=US/SS, vm=1, type=1C
/// TissueHeterogeneityCorrection (3004,0014) vr=CS, vm=1-3, type=3
DcmCodeString TissueHeterogeneityCorrection;
/// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
- /// - also defined in: GeneralImageModule
DRTDerivationCodeSequence DerivationCodeSequence;
/// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
- /// - also defined in: GeneralImageModule
DRTReferencedInstanceSequence ReferencedInstanceSequence;
// --- RTDVHModule (U) ---
DcmUniqueIdentifier OriginalSpecializedSOPClassUID;
/// CodingSchemeIdentificationSequence (0008,0110) vr=SQ, vm=1, type=3
DRTCodingSchemeIdentificationSequence CodingSchemeIdentificationSequence;
+ /// ContextGroupIdentificationSequence (0008,0123) vr=SQ, vm=1, type=3
+ DRTContextGroupIdentificationSequence ContextGroupIdentificationSequence;
+ /// MappingResourceIdentificationSequence (0008,0124) vr=SQ, vm=1, type=3
+ DRTMappingResourceIdentificationSequence MappingResourceIdentificationSequence;
/// TimezoneOffsetFromUTC (0008,0201) vr=SH, vm=1, type=3
DcmShortString TimezoneOffsetFromUTC;
/// ContributingEquipmentSequence (0018,a001) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTImageIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/seq/drtcsis.h" // for CodingSchemeIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcctus.h" // for ConsentForClinicalTrialUseSequence
#include "dcmtk/dcmrt/seq/drtcpis.h" // for ConsultingPhysicianIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtcgis.h" // for ContextGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcbars.h" // for ContrastBolusAdministrationRouteSequence
#include "dcmtk/dcmrt/seq/drtbas.h" // for ContrastBolusAgentSequence
#include "dcmtk/dcmrt/seq/drtces.h" // for ContributingEquipmentSequence
#include "dcmtk/dcmrt/seq/drtes.h" // for ExposureSequence
#include "dcmtk/dcmrt/seq/drtfms.h" // for FluenceMapSequence
#include "dcmtk/dcmrt/seq/drtfes.h" // for FrameExtractionSequence
+#include "dcmtk/dcmrt/seq/drtgpis.h" // for GroupOfPatientsIdentificationSequence
#include "dcmtk/dcmrt/seq/drthsdrs.h" // for HL7StructuredDocumentReferenceSequence
#include "dcmtk/dcmrt/seq/drtiis.h" // for IconImageSequence
#include "dcmtk/dcmrt/seq/drtians.h" // for IssuerOfAccessionNumberSequence
#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
#include "dcmtk/dcmrt/seq/drtiseis.h" // for IssuerOfServiceEpisodeIDSequence
#include "dcmtk/dcmrt/seq/drtmps.h" // for MACParametersSequence
+#include "dcmtk/dcmrt/seq/drtmris.h" // for MappingResourceIdentificationSequence
#include "dcmtk/dcmrt/seq/drtmls.h" // for ModalityLUTSequence
#include "dcmtk/dcmrt/seq/drtmacds.h" // for MultiplexedAudioChannelsDescriptionCodeSequence
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
#include "dcmtk/dcmrt/seq/drtoas.h" // for OriginalAttributesSequence
#include "dcmtk/dcmrt/seq/drtopis.h" // for OtherPatientIDsSequence
#include "dcmtk/dcmrt/seq/drtpbcs.h" // for PatientBreedCodeSequence
#include "dcmtk/dcmrt/seq/drtrscs.h" // for RequestingServiceCodeSequence
#include "dcmtk/dcmrt/seq/drtsdcs.h" // for SeriesDescriptionCodeSequence
#include "dcmtk/dcmrt/seq/drtsis.h" // for SourceImageSequence
+#include "dcmtk/dcmrt/seq/drtsins.h" // for SourceInstanceSequence
+#include "dcmtk/dcmrt/seq/drtspgis.h" // for SourcePatientGroupIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtscs.h" // for StrainCodeSequence
+#include "dcmtk/dcmrt/seq/drtsss.h" // for StrainStockSequence
#include "dcmtk/dcmrt/seq/drtscris.h" // for StudiesContainingOtherReferencedInstancesSequence
+#include "dcmtk/dcmrt/seq/drtudis.h" // for UDISequence
#include "dcmtk/dcmrt/seq/drtvls.h" // for VOILUTSequence
*/
virtual OFBool isFrameOfReferenceModulePresent(const OFBool complete = OFFalse);
+ /** check whether GeneralReferenceModule (U) is present.
+ * By default, a module is reported as being present if at least one attribute
+ * from this module has a non-empty value.
+ * @param complete check for all mandatory attributes of this module if enabled
+ * @return OFTrue if module is present, OFFalse otherwise
+ */
+ virtual OFBool isGeneralReferenceModulePresent(const OFBool complete = OFFalse);
+
/** check whether ContrastBolusModule (C) is present.
* By default, a module is reported as being present if at least one attribute
* from this module has a non-empty value.
*/
virtual OFCondition getAdmittingDiagnosesDescription(OFString &value, const signed long pos = 0) const;
+ /** get Allergies (0010,2110)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getAllergies(OFString &value, const signed long pos = 0) const;
+
/** get ApprovalStatus (300e,0002)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getClinicalTrialTimePointID(OFString &value, const signed long pos = 0) const;
+ /** get ColorSpace (0028,2002)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getColorSpace(OFString &value, const signed long pos = 0) const;
+
/** get Columns (0028,0011)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
*/
virtual OFCondition getEthnicGroup(OFString &value, const signed long pos = 0) const;
+ /** get ExposureTime (0018,1150)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getExposureTime(OFString &value, const signed long pos = 0) const;
+
+ /** get ExposureTime (0018,1150)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getExposureTime(Sint32 &value, const unsigned long pos = 0) const;
+
+ /** get ExposureTimeInms (0018,9328)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getExposureTimeInms(Float64 &value, const unsigned long pos = 0) const;
+
/** get FractionNumber (3002,0029)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getLargestImagePixelValue(Uint16 &value, const unsigned long pos = 0) const;
+ /** get LastMenstrualDate (0010,21d0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLastMenstrualDate(OFString &value, const signed long pos = 0) const;
+
/** get LongitudinalTemporalInformationModified (0028,0303)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MedicalAlerts (0010,2000)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMedicalAlerts(OFString &value, const signed long pos = 0) const;
+
+ /** get MetersetExposure (3002,0032)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMetersetExposure(OFString &value, const signed long pos = 0) const;
+
+ /** get MetersetExposure (3002,0032)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMetersetExposure(Float64 &value, const unsigned long pos = 0) const;
+
/** get Modality (0008,0060)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientAge(OFString &value, const signed long pos = 0) const;
+ /** get PatientAlternativeCalendar (0010,0035)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthDate (0010,0030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthDate(OFString &value, const signed long pos = 0) const;
+ /** get PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthTime (0010,0032)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthTime(OFString &value, const signed long pos = 0) const;
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientBreedDescription (0010,2292)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientComments(OFString &value, const signed long pos = 0) const;
+ /** get PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientID (0010,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientSpeciesDescription(OFString &value, const signed long pos = 0) const;
+ /** get PatientState (0038,0500)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientState(OFString &value, const signed long pos = 0) const;
+
/** get PatientSupportAngle (300a,0122)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPreferredPlaybackSequencing(Uint16 &value, const unsigned long pos = 0) const;
+ /** get PregnancyStatus (0010,21c0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPregnancyStatus(Uint16 &value, const unsigned long pos = 0) const;
+
/** get PresentationLUTShape (2050,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getSmallestImagePixelValue(Uint16 &value, const unsigned long pos = 0) const;
+ /** get SmokingStatus (0010,21a0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSmokingStatus(OFString &value, const signed long pos = 0) const;
+
/** get SoftwareVersions (0018,1020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getStopTrim(Sint32 &value, const unsigned long pos = 0) const;
+ /** get StrainAdditionalInformation (0010,0218)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainAdditionalInformation(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainDescription (0010,0212)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainNomenclature (0010,0213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainNomenclature(OFString &value, const signed long pos = 0) const;
+
/** get StudyDate (0008,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTConsultingPhysicianIdentificationSequence &getConsultingPhysicianIdentificationSequence() const
{ return ConsultingPhysicianIdentificationSequence; }
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return reference to sequence element
+ */
+ DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence()
+ { return ContextGroupIdentificationSequence; }
+
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return const reference to sequence element
+ */
+ const DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence() const
+ { return ContextGroupIdentificationSequence; }
+
/** get ContrastBolusAdministrationRouteSequence (0018,0014)
* @return reference to sequence element
*/
const DRTFrameExtractionSequence &getFrameExtractionSequence() const
{ return FrameExtractionSequence; }
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return reference to sequence element
+ */
+ DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence()
+ { return GroupOfPatientsIdentificationSequence; }
+
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return const reference to sequence element
+ */
+ const DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence() const
+ { return GroupOfPatientsIdentificationSequence; }
+
/** get HL7StructuredDocumentReferenceSequence (0040,a390)
* @return reference to sequence element
*/
const DRTMACParametersSequence &getMACParametersSequence() const
{ return MACParametersSequence; }
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return reference to sequence element
+ */
+ DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence()
+ { return MappingResourceIdentificationSequence; }
+
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return const reference to sequence element
+ */
+ const DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence() const
+ { return MappingResourceIdentificationSequence; }
+
/** get ModalityLUTSequence (0028,3000)
* @return reference to sequence element
*/
const DRTMultiplexedAudioChannelsDescriptionCodeSequence &getMultiplexedAudioChannelsDescriptionCodeSequence() const
{ return MultiplexedAudioChannelsDescriptionCodeSequence; }
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
/** get OriginalAttributesSequence (0400,0561)
* @return reference to sequence element
*/
const DRTSourceImageSequence &getSourceImageSequence() const
{ return SourceImageSequence; }
+ /** get SourceInstanceSequence (0042,0013)
+ * @return reference to sequence element
+ */
+ DRTSourceInstanceSequence &getSourceInstanceSequence()
+ { return SourceInstanceSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return const reference to sequence element
+ */
+ const DRTSourceInstanceSequence &getSourceInstanceSequence() const
+ { return SourceInstanceSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return reference to sequence element
+ */
+ DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence()
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return const reference to sequence element
+ */
+ const DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence() const
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return reference to sequence element
+ */
+ DRTStrainCodeSequence &getStrainCodeSequence()
+ { return StrainCodeSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return const reference to sequence element
+ */
+ const DRTStrainCodeSequence &getStrainCodeSequence() const
+ { return StrainCodeSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return reference to sequence element
+ */
+ DRTStrainStockSequence &getStrainStockSequence()
+ { return StrainStockSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return const reference to sequence element
+ */
+ const DRTStrainStockSequence &getStrainStockSequence() const
+ { return StrainStockSequence; }
+
/** get StudiesContainingOtherReferencedInstancesSequence (0008,1200)
* @return reference to sequence element
*/
const DRTStudiesContainingOtherReferencedInstancesSequence &getStudiesContainingOtherReferencedInstancesSequence() const
{ return StudiesContainingOtherReferencedInstancesSequence; }
+ /** get UDISequence (0018,100a)
+ * @return reference to sequence element
+ */
+ DRTUDISequence &getUDISequence()
+ { return UDISequence; }
+
+ /** get UDISequence (0018,100a)
+ * @return const reference to sequence element
+ */
+ const DRTUDISequence &getUDISequence() const
+ { return UDISequence; }
+
/** get VOILUTSequence (0028,3010)
* @return reference to sequence element
*/
*/
virtual OFCondition setAdmittingDiagnosesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set Allergies (0010,2110)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setAllergies(const OFString &value, const OFBool check = OFTrue);
+
/** set ApprovalStatus (300e,0002)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setClinicalTrialTimePointID(const OFString &value, const OFBool check = OFTrue);
+ /** set ColorSpace (0028,2002)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setColorSpace(const OFString &value, const OFBool check = OFTrue);
+
/** set Columns (0028,0011)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
*/
virtual OFCondition setEthnicGroup(const OFString &value, const OFBool check = OFTrue);
+ /** set ExposureTime (0018,1150)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (IS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setExposureTime(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ExposureTimeInms (0018,9328)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setExposureTimeInms(const Float64 value, const unsigned long pos = 0);
+
/** set FractionNumber (3002,0029)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (IS) and VM (1) if enabled
*/
virtual OFCondition setLargestImagePixelValue(const Uint16 value, const unsigned long pos = 0);
+ /** set LastMenstrualDate (0010,21d0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLastMenstrualDate(const OFString &value, const OFBool check = OFTrue);
+
/** set LongitudinalTemporalInformationModified (0028,0303)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set MeasuredAPDimension (0010,1023)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredAPDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MeasuredLateralDimension (0010,1024)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredLateralDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MedicalAlerts (0010,2000)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMedicalAlerts(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MetersetExposure (3002,0032)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMetersetExposure(const OFString &value, const OFBool check = OFTrue);
+
/** set Modality (0008,0060)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setPatientAge(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientAlternativeCalendar (0010,0035)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthDate (0010,0030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthDate(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthTime (0010,0032)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (TM) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthTime(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBodyMassIndex (0010,1022)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBodyMassIndex(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBreedDescription (0010,2292)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientComments(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientID (0010,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientSpeciesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientState (0038,0500)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientState(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientSupportAngle (300a,0122)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
virtual OFCondition setPreferredPlaybackSequencing(const Uint16 value, const unsigned long pos = 0);
+ /** set PregnancyStatus (0010,21c0)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPregnancyStatus(const Uint16 value, const unsigned long pos = 0);
+
/** set PresentationLUTShape (2050,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setSmallestImagePixelValue(const Uint16 value, const unsigned long pos = 0);
+ /** set SmokingStatus (0010,21a0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSmokingStatus(const OFString &value, const OFBool check = OFTrue);
+
/** set SoftwareVersions (0018,1020)
* @param value value to be set (possibly multi-valued) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
*/
virtual OFCondition setStopTrim(const OFString &value, const OFBool check = OFTrue);
+ /** set StrainAdditionalInformation (0010,0218)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainAdditionalInformation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainDescription (0010,0212)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainNomenclature (0010,0213)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainNomenclature(const OFString &value, const OFBool check = OFTrue);
+
/** set StudyDate (0008,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
/// PatientBirthDate (0010,0030) vr=DA, vm=1, type=2
DcmDate PatientBirthDate;
+ /// PatientBirthDateInAlternativeCalendar (0010,0033) vr=LO, vm=1, type=3
+ DcmLongString PatientBirthDateInAlternativeCalendar;
+ /// PatientDeathDateInAlternativeCalendar (0010,0034) vr=LO, vm=1, type=3
+ DcmLongString PatientDeathDateInAlternativeCalendar;
+ /// PatientAlternativeCalendar (0010,0035) vr=CS, vm=1, type=1C
+ DcmCodeString PatientAlternativeCalendar;
/// PatientSex (0010,0040) vr=CS, vm=1, type=2
DcmCodeString PatientSex;
/// ReferencedPatientPhotoSequence (0010,1100) vr=SQ, vm=1, type=3
DRTPatientBreedCodeSequence PatientBreedCodeSequence;
/// BreedRegistrationSequence (0010,2294) vr=SQ, vm=1, type=2C
DRTBreedRegistrationSequence BreedRegistrationSequence;
+ /// StrainDescription (0010,0212) vr=UC, vm=1, type=3
+ DcmUnlimitedCharacters StrainDescription;
+ /// StrainNomenclature (0010,0213) vr=LO, vm=1, type=3
+ DcmLongString StrainNomenclature;
+ /// StrainCodeSequence (0010,0219) vr=SQ, vm=1, type=3
+ DRTStrainCodeSequence StrainCodeSequence;
+ /// StrainAdditionalInformation (0010,0218) vr=UT, vm=1, type=3
+ DcmUnlimitedText StrainAdditionalInformation;
+ /// StrainStockSequence (0010,0216) vr=SQ, vm=1, type=3
+ DRTStrainStockSequence StrainStockSequence;
/// ResponsiblePerson (0010,2297) vr=PN, vm=1, type=2C
DcmPersonName ResponsiblePerson;
/// ResponsiblePersonRole (0010,2298) vr=CS, vm=1, type=1C
DcmLongString DeidentificationMethod;
/// DeidentificationMethodCodeSequence (0012,0064) vr=SQ, vm=1, type=1C
DRTDeidentificationMethodCodeSequence DeidentificationMethodCodeSequence;
+ /// SourcePatientGroupIdentificationSequence (0010,0026) vr=SQ, vm=1, type=3
+ DRTSourcePatientGroupIdentificationSequence SourcePatientGroupIdentificationSequence;
+ /// GroupOfPatientsIdentificationSequence (0010,0027) vr=SQ, vm=1, type=3
+ DRTGroupOfPatientsIdentificationSequence GroupOfPatientsIdentificationSequence;
// --- ClinicalTrialSubjectModule (U) ---
DcmDecimalString PatientSize;
/// PatientWeight (0010,1030) vr=DS, vm=1, type=3
DcmDecimalString PatientWeight;
+ /// PatientBodyMassIndex (0010,1022) vr=DS, vm=1, type=3
+ DcmDecimalString PatientBodyMassIndex;
+ /// MeasuredAPDimension (0010,1023) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredAPDimension;
+ /// MeasuredLateralDimension (0010,1024) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredLateralDimension;
/// PatientSizeCodeSequence (0010,1021) vr=SQ, vm=1, type=3
DRTPatientSizeCodeSequence PatientSizeCodeSequence;
+ /// MedicalAlerts (0010,2000) vr=LO, vm=1-n, type=3
+ DcmLongString MedicalAlerts;
+ /// Allergies (0010,2110) vr=LO, vm=1-n, type=3
+ DcmLongString Allergies;
+ /// SmokingStatus (0010,21a0) vr=CS, vm=1, type=3
+ DcmCodeString SmokingStatus;
+ /// PregnancyStatus (0010,21c0) vr=US, vm=1, type=3
+ DcmUnsignedShort PregnancyStatus;
+ /// LastMenstrualDate (0010,21d0) vr=DA, vm=1, type=3
+ DcmDate LastMenstrualDate;
+ /// PatientState (0038,0500) vr=LO, vm=1, type=3
+ DcmLongString PatientState;
/// Occupation (0010,2180) vr=SH, vm=1, type=3
DcmShortString Occupation;
/// AdditionalPatientHistory (0010,21b0) vr=LT, vm=1, type=3
DRTSeriesDescriptionCodeSequence SeriesDescriptionCodeSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// ReferencedPerformedProcedureStepSequence (0008,1111) vr=SQ, vm=1, type=3
DRTReferencedPerformedProcedureStepSequence ReferencedPerformedProcedureStepSequence;
/// RequestAttributesSequence (0040,0275) vr=SQ, vm=1, type=3
DcmLongString SoftwareVersions;
/// GantryID (0018,1008) vr=LO, vm=1, type=3
DcmLongString GantryID;
+ /// UDISequence (0018,100a) vr=SQ, vm=1, type=3
+ DRTUDISequence UDISequence;
/// SpatialResolution (0018,1050) vr=DS, vm=1, type=3
DcmDecimalString SpatialResolution;
/// DateOfLastCalibration (0018,1200) vr=DA, vm=1-n, type=3
DcmTime AcquisitionTime;
/// AcquisitionDateTime (0008,002a) vr=DT, vm=1, type=3
DcmDateTime AcquisitionDateTime;
- /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
- DRTReferencedImageSequence ReferencedImageSequence;
- /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
- DcmShortText DerivationDescription;
- /// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
- DRTDerivationCodeSequence DerivationCodeSequence;
- /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
- DRTSourceImageSequence SourceImageSequence;
- /// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
- DRTReferencedInstanceSequence ReferencedInstanceSequence;
/// ImagesInAcquisition (0020,1002) vr=IS, vm=1, type=3
DcmIntegerString ImagesInAcquisition;
/// ImageComments (0020,4000) vr=LT, vm=1, type=3
/// RealWorldValueMappingSequence (0040,9096) vr=SQ, vm=1, type=3
DRTRealWorldValueMappingSequence RealWorldValueMappingSequence;
+ // --- GeneralReferenceModule (U) ---
+
+ /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
+ DRTReferencedImageSequence ReferencedImageSequence;
+ /// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
+ DRTReferencedInstanceSequence ReferencedInstanceSequence;
+ /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
+ DcmShortText DerivationDescription;
+ /// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
+ DRTDerivationCodeSequence DerivationCodeSequence;
+ /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
+ DRTSourceImageSequence SourceImageSequence;
+ /// SourceInstanceSequence (0042,0013) vr=SQ, vm=1, type=3
+ DRTSourceInstanceSequence SourceInstanceSequence;
+
// --- ImagePixelModule (M) ---
// SamplesPerPixel (0028,0002) vr=US, vm=1, type=1
// PixelRepresentation (0028,0103) vr=US, vm=1, type=1
// - also defined in: RTImageModule
// DcmUnsignedShort PixelRepresentation;
- /// PixelData (7fe0,0010) vr=OB/OW, vm=1, type=1C
- DcmPixelData PixelData;
/// PlanarConfiguration (0028,0006) vr=US, vm=1, type=1C
DcmUnsignedShort PlanarConfiguration;
/// PixelAspectRatio (0028,0034) vr=IS, vm=2, type=1C
DcmOtherByteOtherWord BluePaletteColorLookupTableData;
/// ICCProfile (0028,2000) vr=OB, vm=1, type=3
DcmOtherByteOtherWord ICCProfile;
+ /// ColorSpace (0028,2002) vr=CS, vm=1, type=3
+ DcmCodeString ColorSpace;
+ /// PixelData (7fe0,0010) vr=OB/OW, vm=1, type=1C
+ DcmPixelData PixelData;
/// PixelDataProviderURL (0028,7fe0) vr=UR, vm=1, type=1C
DcmUniversalResourceIdentifierOrLocator PixelDataProviderURL;
/// PixelPaddingRangeLimit (0028,0121) vr=US/SS, vm=1, type=1C
DcmDecimalString IsocenterPosition;
/// PatientPosition (0018,5100) vr=CS, vm=1, type=1C
DcmCodeString PatientPosition;
+ /// ExposureTime (0018,1150) vr=IS, vm=1, type=3
+ DcmIntegerString ExposureTime;
+ /// ExposureTimeInms (0018,9328) vr=FD, vm=1, type=3
+ DcmFloatingPointDouble ExposureTimeInms;
+ /// MetersetExposure (3002,0032) vr=DS, vm=1, type=3
+ DcmDecimalString MetersetExposure;
// --- ModalityLUTModule (U) ---
DcmUniqueIdentifier OriginalSpecializedSOPClassUID;
/// CodingSchemeIdentificationSequence (0008,0110) vr=SQ, vm=1, type=3
DRTCodingSchemeIdentificationSequence CodingSchemeIdentificationSequence;
+ /// ContextGroupIdentificationSequence (0008,0123) vr=SQ, vm=1, type=3
+ DRTContextGroupIdentificationSequence ContextGroupIdentificationSequence;
+ /// MappingResourceIdentificationSequence (0008,0124) vr=SQ, vm=1, type=3
+ DRTMappingResourceIdentificationSequence MappingResourceIdentificationSequence;
/// TimezoneOffsetFromUTC (0008,0201) vr=SH, vm=1, type=3
DcmShortString TimezoneOffsetFromUTC;
/// ContributingEquipmentSequence (0018,a001) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonPlanIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/seq/drtcsis.h" // for CodingSchemeIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcctus.h" // for ConsentForClinicalTrialUseSequence
#include "dcmtk/dcmrt/seq/drtcpis.h" // for ConsultingPhysicianIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtcgis.h" // for ContextGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtces.h" // for ContributingEquipmentSequence
#include "dcmtk/dcmrt/seq/drtcsas.h" // for ConversionSourceAttributesSequence
#include "dcmtk/dcmrt/seq/drtdimcs.h" // for DeidentificationMethodCodeSequence
+#include "dcmtk/dcmrt/seq/drtdcs.h" // for DerivationCodeSequence
#include "dcmtk/dcmrt/seq/drtdss.h" // for DigitalSignaturesSequence
#include "dcmtk/dcmrt/seq/drtdrs.h" // for DoseReferenceSequence
#include "dcmtk/dcmrt/seq/drteas.h" // for EncryptedAttributesSequence
#include "dcmtk/dcmrt/seq/drtfgs.h" // for FractionGroupSequence
+#include "dcmtk/dcmrt/seq/drtgpis.h" // for GroupOfPatientsIdentificationSequence
#include "dcmtk/dcmrt/seq/drthsdrs.h" // for HL7StructuredDocumentReferenceSequence
#include "dcmtk/dcmrt/seq/drtibs.h" // for IonBeamSequence
#include "dcmtk/dcmrt/seq/drtitts.h" // for IonToleranceTableSequence
#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
#include "dcmtk/dcmrt/seq/drtiseis.h" // for IssuerOfServiceEpisodeIDSequence
#include "dcmtk/dcmrt/seq/drtmps.h" // for MACParametersSequence
+#include "dcmtk/dcmrt/seq/drtmris.h" // for MappingResourceIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
#include "dcmtk/dcmrt/seq/drtoas.h" // for OriginalAttributesSequence
#include "dcmtk/dcmrt/seq/drtopis.h" // for OtherPatientIDsSequence
#include "dcmtk/dcmrt/seq/drtpbcs.h" // for PatientBreedCodeSequence
#include "dcmtk/dcmrt/seq/drtpcs.h" // for ProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrppcs.h" // for ReasonForPerformedProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrds.h" // for ReferencedDoseSequence
+#include "dcmtk/dcmrt/seq/drtrims.h" // for ReferencedImageSequence
+#include "dcmtk/dcmrt/seq/drtris.h" // for ReferencedInstanceSequence
#include "dcmtk/dcmrt/seq/drtrpphs.h" // for ReferencedPatientPhotoSequence
#include "dcmtk/dcmrt/seq/drtrps.h" // for ReferencedPatientSequence
#include "dcmtk/dcmrt/seq/drtrppss.h" // for ReferencedPerformedProcedureStepSequence
#include "dcmtk/dcmrt/seq/drtras.h" // for RequestAttributesSequence
#include "dcmtk/dcmrt/seq/drtrscs.h" // for RequestingServiceCodeSequence
#include "dcmtk/dcmrt/seq/drtsdcs.h" // for SeriesDescriptionCodeSequence
+#include "dcmtk/dcmrt/seq/drtsis.h" // for SourceImageSequence
+#include "dcmtk/dcmrt/seq/drtsins.h" // for SourceInstanceSequence
+#include "dcmtk/dcmrt/seq/drtspgis.h" // for SourcePatientGroupIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtscs.h" // for StrainCodeSequence
+#include "dcmtk/dcmrt/seq/drtsss.h" // for StrainStockSequence
#include "dcmtk/dcmrt/seq/drtscris.h" // for StudiesContainingOtherReferencedInstancesSequence
+#include "dcmtk/dcmrt/seq/drtudis.h" // for UDISequence
/** Interface class for RTIonPlanIOD
*/
virtual OFBool isApprovalModulePresent(const OFBool complete = OFFalse);
+ /** check whether GeneralReferenceModule (U) is present.
+ * By default, a module is reported as being present if at least one attribute
+ * from this module has a non-empty value.
+ * @param complete check for all mandatory attributes of this module if enabled
+ * @return OFTrue if module is present, OFFalse otherwise
+ */
+ virtual OFBool isGeneralReferenceModulePresent(const OFBool complete = OFFalse);
+
/** check whether CommonInstanceReferenceModule (U) is present.
* By default, a module is reported as being present if at least one attribute
* from this module has a non-empty value.
*/
virtual OFCondition getAdmittingDiagnosesDescription(OFString &value, const signed long pos = 0) const;
+ /** get Allergies (0010,2110)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getAllergies(OFString &value, const signed long pos = 0) const;
+
/** get ApprovalStatus (300e,0002)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getDeidentificationMethod(OFString &value, const signed long pos = 0) const;
+ /** get DerivationDescription (0008,2111)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDerivationDescription(OFString &value, const signed long pos = 0) const;
+
/** get DeviceSerialNumber (0018,1000)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getEthnicGroup(OFString &value, const signed long pos = 0) const;
+ /** get FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix (0070,030b)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(Float64 &value, const unsigned long pos = 0) const;
+
/** get FrameOfReferenceUID (0020,0052)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getIssuerOfPatientID(OFString &value, const signed long pos = 0) const;
+ /** get LastMenstrualDate (0010,21d0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLastMenstrualDate(OFString &value, const signed long pos = 0) const;
+
/** get LongitudinalTemporalInformationModified (0028,0303)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MedicalAlerts (0010,2000)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMedicalAlerts(OFString &value, const signed long pos = 0) const;
+
/** get Modality (0008,0060)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientAge(OFString &value, const signed long pos = 0) const;
+ /** get PatientAlternativeCalendar (0010,0035)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthDate (0010,0030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthDate(OFString &value, const signed long pos = 0) const;
+ /** get PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthTime (0010,0032)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthTime(OFString &value, const signed long pos = 0) const;
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientBreedDescription (0010,2292)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientComments(OFString &value, const signed long pos = 0) const;
+ /** get PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientID (0010,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientSpeciesDescription(OFString &value, const signed long pos = 0) const;
+ /** get PatientState (0038,0500)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientState(OFString &value, const signed long pos = 0) const;
+
/** get PatientWeight (0010,1030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPositionReferenceIndicator(OFString &value, const signed long pos = 0) const;
+ /** get PregnancyStatus (0010,21c0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPregnancyStatus(Uint16 &value, const unsigned long pos = 0) const;
+
/** get PrescriptionDescription (300a,000e)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getServiceEpisodeID(OFString &value, const signed long pos = 0) const;
+ /** get SmokingStatus (0010,21a0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSmokingStatus(OFString &value, const signed long pos = 0) const;
+
/** get SoftwareVersions (0018,1020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getStationName(OFString &value, const signed long pos = 0) const;
+ /** get StrainAdditionalInformation (0010,0218)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainAdditionalInformation(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainDescription (0010,0212)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainNomenclature (0010,0213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainNomenclature(OFString &value, const signed long pos = 0) const;
+
/** get StudyDate (0008,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTConsultingPhysicianIdentificationSequence &getConsultingPhysicianIdentificationSequence() const
{ return ConsultingPhysicianIdentificationSequence; }
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return reference to sequence element
+ */
+ DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence()
+ { return ContextGroupIdentificationSequence; }
+
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return const reference to sequence element
+ */
+ const DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence() const
+ { return ContextGroupIdentificationSequence; }
+
/** get ContributingEquipmentSequence (0018,a001)
* @return reference to sequence element
*/
const DRTDeidentificationMethodCodeSequence &getDeidentificationMethodCodeSequence() const
{ return DeidentificationMethodCodeSequence; }
+ /** get DerivationCodeSequence (0008,9215)
+ * @return reference to sequence element
+ */
+ DRTDerivationCodeSequence &getDerivationCodeSequence()
+ { return DerivationCodeSequence; }
+
+ /** get DerivationCodeSequence (0008,9215)
+ * @return const reference to sequence element
+ */
+ const DRTDerivationCodeSequence &getDerivationCodeSequence() const
+ { return DerivationCodeSequence; }
+
/** get DigitalSignaturesSequence (fffa,fffa)
* @return reference to sequence element
*/
const DRTFractionGroupSequence &getFractionGroupSequence() const
{ return FractionGroupSequence; }
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return reference to sequence element
+ */
+ DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence()
+ { return GroupOfPatientsIdentificationSequence; }
+
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return const reference to sequence element
+ */
+ const DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence() const
+ { return GroupOfPatientsIdentificationSequence; }
+
/** get HL7StructuredDocumentReferenceSequence (0040,a390)
* @return reference to sequence element
*/
const DRTMACParametersSequence &getMACParametersSequence() const
{ return MACParametersSequence; }
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return reference to sequence element
+ */
+ DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence()
+ { return MappingResourceIdentificationSequence; }
+
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return const reference to sequence element
+ */
+ const DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence() const
+ { return MappingResourceIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
/** get OriginalAttributesSequence (0400,0561)
* @return reference to sequence element
*/
const DRTReferencedDoseSequence &getReferencedDoseSequence() const
{ return ReferencedDoseSequence; }
+ /** get ReferencedImageSequence (0008,1140)
+ * @return reference to sequence element
+ */
+ DRTReferencedImageSequence &getReferencedImageSequence()
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedImageSequence (0008,1140)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedImageSequence &getReferencedImageSequence() const
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return reference to sequence element
+ */
+ DRTReferencedInstanceSequence &getReferencedInstanceSequence()
+ { return ReferencedInstanceSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedInstanceSequence &getReferencedInstanceSequence() const
+ { return ReferencedInstanceSequence; }
+
/** get ReferencedPatientPhotoSequence (0010,1100)
* @return reference to sequence element
*/
const DRTSeriesDescriptionCodeSequence &getSeriesDescriptionCodeSequence() const
{ return SeriesDescriptionCodeSequence; }
+ /** get SourceImageSequence (0008,2112)
+ * @return reference to sequence element
+ */
+ DRTSourceImageSequence &getSourceImageSequence()
+ { return SourceImageSequence; }
+
+ /** get SourceImageSequence (0008,2112)
+ * @return const reference to sequence element
+ */
+ const DRTSourceImageSequence &getSourceImageSequence() const
+ { return SourceImageSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return reference to sequence element
+ */
+ DRTSourceInstanceSequence &getSourceInstanceSequence()
+ { return SourceInstanceSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return const reference to sequence element
+ */
+ const DRTSourceInstanceSequence &getSourceInstanceSequence() const
+ { return SourceInstanceSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return reference to sequence element
+ */
+ DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence()
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return const reference to sequence element
+ */
+ const DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence() const
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return reference to sequence element
+ */
+ DRTStrainCodeSequence &getStrainCodeSequence()
+ { return StrainCodeSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return const reference to sequence element
+ */
+ const DRTStrainCodeSequence &getStrainCodeSequence() const
+ { return StrainCodeSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return reference to sequence element
+ */
+ DRTStrainStockSequence &getStrainStockSequence()
+ { return StrainStockSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return const reference to sequence element
+ */
+ const DRTStrainStockSequence &getStrainStockSequence() const
+ { return StrainStockSequence; }
+
/** get StudiesContainingOtherReferencedInstancesSequence (0008,1200)
* @return reference to sequence element
*/
const DRTStudiesContainingOtherReferencedInstancesSequence &getStudiesContainingOtherReferencedInstancesSequence() const
{ return StudiesContainingOtherReferencedInstancesSequence; }
+ /** get UDISequence (0018,100a)
+ * @return reference to sequence element
+ */
+ DRTUDISequence &getUDISequence()
+ { return UDISequence; }
+
+ /** get UDISequence (0018,100a)
+ * @return const reference to sequence element
+ */
+ const DRTUDISequence &getUDISequence() const
+ { return UDISequence; }
+
// --- set DICOM attribute values ---
/** set AccessionNumber (0008,0050)
*/
virtual OFCondition setAdmittingDiagnosesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set Allergies (0010,2110)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setAllergies(const OFString &value, const OFBool check = OFTrue);
+
/** set ApprovalStatus (300e,0002)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setDeidentificationMethod(const OFString &value, const OFBool check = OFTrue);
+ /** set DerivationDescription (0008,2111)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDerivationDescription(const OFString &value, const OFBool check = OFTrue);
+
/** set DeviceSerialNumber (0018,1000)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setEthnicGroup(const OFString &value, const OFBool check = OFTrue);
+ /** set FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix (0070,030b)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=16
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(const Float64 value, const unsigned long pos = 0);
+
/** set FrameOfReferenceUID (0020,0052)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
*/
virtual OFCondition setIssuerOfPatientID(const OFString &value, const OFBool check = OFTrue);
+ /** set LastMenstrualDate (0010,21d0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLastMenstrualDate(const OFString &value, const OFBool check = OFTrue);
+
/** set LongitudinalTemporalInformationModified (0028,0303)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set MeasuredAPDimension (0010,1023)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredAPDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MeasuredLateralDimension (0010,1024)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredLateralDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MedicalAlerts (0010,2000)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMedicalAlerts(const OFString &value, const OFBool check = OFTrue);
+
/** set Modality (0008,0060)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setPatientAge(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientAlternativeCalendar (0010,0035)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthDate (0010,0030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthDate(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthTime (0010,0032)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (TM) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthTime(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBodyMassIndex (0010,1022)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBodyMassIndex(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBreedDescription (0010,2292)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientComments(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientID (0010,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientSpeciesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientState (0038,0500)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientState(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientWeight (0010,1030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
virtual OFCondition setPositionReferenceIndicator(const OFString &value, const OFBool check = OFTrue);
+ /** set PregnancyStatus (0010,21c0)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPregnancyStatus(const Uint16 value, const unsigned long pos = 0);
+
/** set PrescriptionDescription (300a,000e)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
*/
virtual OFCondition setServiceEpisodeID(const OFString &value, const OFBool check = OFTrue);
+ /** set SmokingStatus (0010,21a0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSmokingStatus(const OFString &value, const OFBool check = OFTrue);
+
/** set SoftwareVersions (0018,1020)
* @param value value to be set (possibly multi-valued) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
*/
virtual OFCondition setStationName(const OFString &value, const OFBool check = OFTrue);
+ /** set StrainAdditionalInformation (0010,0218)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainAdditionalInformation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainDescription (0010,0212)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainNomenclature (0010,0213)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainNomenclature(const OFString &value, const OFBool check = OFTrue);
+
/** set StudyDate (0008,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
/// PatientBirthDate (0010,0030) vr=DA, vm=1, type=2
DcmDate PatientBirthDate;
+ /// PatientBirthDateInAlternativeCalendar (0010,0033) vr=LO, vm=1, type=3
+ DcmLongString PatientBirthDateInAlternativeCalendar;
+ /// PatientDeathDateInAlternativeCalendar (0010,0034) vr=LO, vm=1, type=3
+ DcmLongString PatientDeathDateInAlternativeCalendar;
+ /// PatientAlternativeCalendar (0010,0035) vr=CS, vm=1, type=1C
+ DcmCodeString PatientAlternativeCalendar;
/// PatientSex (0010,0040) vr=CS, vm=1, type=2
DcmCodeString PatientSex;
/// ReferencedPatientPhotoSequence (0010,1100) vr=SQ, vm=1, type=3
DRTPatientBreedCodeSequence PatientBreedCodeSequence;
/// BreedRegistrationSequence (0010,2294) vr=SQ, vm=1, type=2C
DRTBreedRegistrationSequence BreedRegistrationSequence;
+ /// StrainDescription (0010,0212) vr=UC, vm=1, type=3
+ DcmUnlimitedCharacters StrainDescription;
+ /// StrainNomenclature (0010,0213) vr=LO, vm=1, type=3
+ DcmLongString StrainNomenclature;
+ /// StrainCodeSequence (0010,0219) vr=SQ, vm=1, type=3
+ DRTStrainCodeSequence StrainCodeSequence;
+ /// StrainAdditionalInformation (0010,0218) vr=UT, vm=1, type=3
+ DcmUnlimitedText StrainAdditionalInformation;
+ /// StrainStockSequence (0010,0216) vr=SQ, vm=1, type=3
+ DRTStrainStockSequence StrainStockSequence;
/// ResponsiblePerson (0010,2297) vr=PN, vm=1, type=2C
DcmPersonName ResponsiblePerson;
/// ResponsiblePersonRole (0010,2298) vr=CS, vm=1, type=1C
DcmLongString DeidentificationMethod;
/// DeidentificationMethodCodeSequence (0012,0064) vr=SQ, vm=1, type=1C
DRTDeidentificationMethodCodeSequence DeidentificationMethodCodeSequence;
+ /// SourcePatientGroupIdentificationSequence (0010,0026) vr=SQ, vm=1, type=3
+ DRTSourcePatientGroupIdentificationSequence SourcePatientGroupIdentificationSequence;
+ /// GroupOfPatientsIdentificationSequence (0010,0027) vr=SQ, vm=1, type=3
+ DRTGroupOfPatientsIdentificationSequence GroupOfPatientsIdentificationSequence;
// --- ClinicalTrialSubjectModule (U) ---
DcmDecimalString PatientSize;
/// PatientWeight (0010,1030) vr=DS, vm=1, type=3
DcmDecimalString PatientWeight;
+ /// PatientBodyMassIndex (0010,1022) vr=DS, vm=1, type=3
+ DcmDecimalString PatientBodyMassIndex;
+ /// MeasuredAPDimension (0010,1023) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredAPDimension;
+ /// MeasuredLateralDimension (0010,1024) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredLateralDimension;
/// PatientSizeCodeSequence (0010,1021) vr=SQ, vm=1, type=3
DRTPatientSizeCodeSequence PatientSizeCodeSequence;
+ /// MedicalAlerts (0010,2000) vr=LO, vm=1-n, type=3
+ DcmLongString MedicalAlerts;
+ /// Allergies (0010,2110) vr=LO, vm=1-n, type=3
+ DcmLongString Allergies;
+ /// SmokingStatus (0010,21a0) vr=CS, vm=1, type=3
+ DcmCodeString SmokingStatus;
+ /// PregnancyStatus (0010,21c0) vr=US, vm=1, type=3
+ DcmUnsignedShort PregnancyStatus;
+ /// LastMenstrualDate (0010,21d0) vr=DA, vm=1, type=3
+ DcmDate LastMenstrualDate;
+ /// PatientState (0038,0500) vr=LO, vm=1, type=3
+ DcmLongString PatientState;
/// Occupation (0010,2180) vr=SH, vm=1, type=3
DcmShortString Occupation;
/// AdditionalPatientHistory (0010,21b0) vr=LT, vm=1, type=3
DRTSeriesDescriptionCodeSequence SeriesDescriptionCodeSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// ReferencedPerformedProcedureStepSequence (0008,1111) vr=SQ, vm=1, type=3
DRTReferencedPerformedProcedureStepSequence ReferencedPerformedProcedureStepSequence;
/// RequestAttributesSequence (0040,0275) vr=SQ, vm=1, type=3
DcmLongString SoftwareVersions;
/// GantryID (0018,1008) vr=LO, vm=1, type=3
DcmLongString GantryID;
+ /// UDISequence (0018,100a) vr=SQ, vm=1, type=3
+ DRTUDISequence UDISequence;
/// SpatialResolution (0018,1050) vr=DS, vm=1, type=3
DcmDecimalString SpatialResolution;
/// DateOfLastCalibration (0018,1200) vr=DA, vm=1-n, type=3
DRTReferencedDoseSequence ReferencedDoseSequence;
/// ReferencedRTPlanSequence (300c,0002) vr=SQ, vm=1, type=3
DRTReferencedRTPlanSequenceInRTGeneralPlanModule ReferencedRTPlanSequence;
+ /// FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix (0070,030b) vr=FD, vm=16, type=3
+ DcmFloatingPointDouble FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix;
// --- RTPrescriptionModule (U) ---
/// ReviewerName (300e,0008) vr=PN, vm=1, type=2C
DcmPersonName ReviewerName;
+ // --- GeneralReferenceModule (U) ---
+
+ /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
+ DRTReferencedImageSequence ReferencedImageSequence;
+ /// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
+ DRTReferencedInstanceSequence ReferencedInstanceSequence;
+ /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
+ DcmShortText DerivationDescription;
+ /// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
+ DRTDerivationCodeSequence DerivationCodeSequence;
+ /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
+ DRTSourceImageSequence SourceImageSequence;
+ /// SourceInstanceSequence (0042,0013) vr=SQ, vm=1, type=3
+ DRTSourceInstanceSequence SourceInstanceSequence;
+
// --- SOPCommonModule (M) ---
/// SOPClassUID (0008,0016) vr=UI, vm=1, type=1
DcmUniqueIdentifier OriginalSpecializedSOPClassUID;
/// CodingSchemeIdentificationSequence (0008,0110) vr=SQ, vm=1, type=3
DRTCodingSchemeIdentificationSequence CodingSchemeIdentificationSequence;
+ /// ContextGroupIdentificationSequence (0008,0123) vr=SQ, vm=1, type=3
+ DRTContextGroupIdentificationSequence ContextGroupIdentificationSequence;
+ /// MappingResourceIdentificationSequence (0008,0124) vr=SQ, vm=1, type=3
+ DRTMappingResourceIdentificationSequence MappingResourceIdentificationSequence;
/// TimezoneOffsetFromUTC (0008,0201) vr=SH, vm=1, type=3
DcmShortString TimezoneOffsetFromUTC;
/// ContributingEquipmentSequence (0018,a001) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonBeamsTreatmentRecordIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/seq/drtcsis.h" // for CodingSchemeIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcctus.h" // for ConsentForClinicalTrialUseSequence
#include "dcmtk/dcmrt/seq/drtcpis.h" // for ConsultingPhysicianIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtcgis.h" // for ContextGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtces.h" // for ContributingEquipmentSequence
#include "dcmtk/dcmrt/seq/drtcsas.h" // for ConversionSourceAttributesSequence
#include "dcmtk/dcmrt/seq/drtdimcs.h" // for DeidentificationMethodCodeSequence
+#include "dcmtk/dcmrt/seq/drtdcs.h" // for DerivationCodeSequence
#include "dcmtk/dcmrt/seq/drtdss.h" // for DigitalSignaturesSequence
#include "dcmtk/dcmrt/seq/drteas.h" // for EncryptedAttributesSequence
#include "dcmtk/dcmrt/seq/drtfgss.h" // for FractionGroupSummarySequence
+#include "dcmtk/dcmrt/seq/drtgpis.h" // for GroupOfPatientsIdentificationSequence
#include "dcmtk/dcmrt/seq/drthsdrs.h" // for HL7StructuredDocumentReferenceSequence
#include "dcmtk/dcmrt/seq/drtians.h" // for IssuerOfAccessionNumberSequence
#include "dcmtk/dcmrt/seq/drtiais.h" // for IssuerOfAdmissionIDSequence
#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
#include "dcmtk/dcmrt/seq/drtiseis.h" // for IssuerOfServiceEpisodeIDSequence
#include "dcmtk/dcmrt/seq/drtmps.h" // for MACParametersSequence
+#include "dcmtk/dcmrt/seq/drtmris.h" // for MappingResourceIdentificationSequence
#include "dcmtk/dcmrt/seq/drtmdrs.h" // for MeasuredDoseReferenceSequence
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
#include "dcmtk/dcmrt/seq/drtoas.h" // for OriginalAttributesSequence
#include "dcmtk/dcmrt/seq/drtopis.h" // for OtherPatientIDsSequence
#include "dcmtk/dcmrt/seq/drtpbcs.h" // for PatientBreedCodeSequence
#include "dcmtk/dcmrt/seq/drtpdecs.h" // for PrivateDataElementCharacteristicsSequence
#include "dcmtk/dcmrt/seq/drtpcs.h" // for ProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrppcs.h" // for ReasonForPerformedProcedureCodeSequence
+#include "dcmtk/dcmrt/seq/drtrims.h" // for ReferencedImageSequence
+#include "dcmtk/dcmrt/seq/drtris.h" // for ReferencedInstanceSequence
#include "dcmtk/dcmrt/seq/drtrpphs.h" // for ReferencedPatientPhotoSequence
#include "dcmtk/dcmrt/seq/drtrps.h" // for ReferencedPatientSequence
#include "dcmtk/dcmrt/seq/drtrppss.h" // for ReferencedPerformedProcedureStepSequence
#include "dcmtk/dcmrt/seq/drtras.h" // for RequestAttributesSequence
#include "dcmtk/dcmrt/seq/drtrscs.h" // for RequestingServiceCodeSequence
#include "dcmtk/dcmrt/seq/drtsdcs.h" // for SeriesDescriptionCodeSequence
+#include "dcmtk/dcmrt/seq/drtsis.h" // for SourceImageSequence
+#include "dcmtk/dcmrt/seq/drtsins.h" // for SourceInstanceSequence
+#include "dcmtk/dcmrt/seq/drtspgis.h" // for SourcePatientGroupIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtscs.h" // for StrainCodeSequence
+#include "dcmtk/dcmrt/seq/drtsss.h" // for StrainStockSequence
#include "dcmtk/dcmrt/seq/drtscris.h" // for StudiesContainingOtherReferencedInstancesSequence
#include "dcmtk/dcmrt/seq/drttms0.h" // for TreatmentMachineSequence
#include "dcmtk/dcmrt/seq/drttsibs.h" // for TreatmentSessionIonBeamSequence
#include "dcmtk/dcmrt/seq/drttscds.h" // for TreatmentSummaryCalculatedDoseReferenceSequence
#include "dcmtk/dcmrt/seq/drttsmds.h" // for TreatmentSummaryMeasuredDoseReferenceSequence
+#include "dcmtk/dcmrt/seq/drtudis.h" // for UDISequence
/** Interface class for RTIonBeamsTreatmentRecordIOD
*/
virtual OFBool isRTTreatmentSummaryRecordModulePresent(const OFBool complete = OFFalse);
+ /** check whether GeneralReferenceModule (U) is present.
+ * By default, a module is reported as being present if at least one attribute
+ * from this module has a non-empty value.
+ * @param complete check for all mandatory attributes of this module if enabled
+ * @return OFTrue if module is present, OFFalse otherwise
+ */
+ virtual OFBool isGeneralReferenceModulePresent(const OFBool complete = OFFalse);
+
/** check whether CommonInstanceReferenceModule (U) is present.
* By default, a module is reported as being present if at least one attribute
* from this module has a non-empty value.
*/
virtual OFCondition getAdmittingDiagnosesDescription(OFString &value, const signed long pos = 0) const;
+ /** get Allergies (0010,2110)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getAllergies(OFString &value, const signed long pos = 0) const;
+
/** get AuthorizationEquipmentCertificationNumber (0100,0426)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getDeidentificationMethod(OFString &value, const signed long pos = 0) const;
+ /** get DerivationDescription (0008,2111)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDerivationDescription(OFString &value, const signed long pos = 0) const;
+
/** get DeviceSerialNumber (0018,1000)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getIssuerOfPatientID(OFString &value, const signed long pos = 0) const;
+ /** get LastMenstrualDate (0010,21d0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLastMenstrualDate(OFString &value, const signed long pos = 0) const;
+
/** get LongitudinalTemporalInformationModified (0028,0303)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MedicalAlerts (0010,2000)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMedicalAlerts(OFString &value, const signed long pos = 0) const;
+
/** get Modality (0008,0060)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientAge(OFString &value, const signed long pos = 0) const;
+ /** get PatientAlternativeCalendar (0010,0035)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthDate (0010,0030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthDate(OFString &value, const signed long pos = 0) const;
+ /** get PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthTime (0010,0032)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthTime(OFString &value, const signed long pos = 0) const;
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientBreedDescription (0010,2292)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientComments(OFString &value, const signed long pos = 0) const;
+ /** get PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientID (0010,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientSpeciesDescription(OFString &value, const signed long pos = 0) const;
+ /** get PatientState (0038,0500)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientState(OFString &value, const signed long pos = 0) const;
+
/** get PatientWeight (0010,1030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPixelPaddingValue(Uint16 &value, const unsigned long pos = 0) const;
+ /** get PregnancyStatus (0010,21c0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPregnancyStatus(Uint16 &value, const unsigned long pos = 0) const;
+
/** get PrimaryDosimeterUnit (300a,00b3)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getServiceEpisodeID(OFString &value, const signed long pos = 0) const;
+ /** get SmokingStatus (0010,21a0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSmokingStatus(OFString &value, const signed long pos = 0) const;
+
/** get SoftwareVersions (0018,1020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getStationName(OFString &value, const signed long pos = 0) const;
+ /** get StrainAdditionalInformation (0010,0218)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainAdditionalInformation(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainDescription (0010,0212)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainNomenclature (0010,0213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainNomenclature(OFString &value, const signed long pos = 0) const;
+
/** get StudyDate (0008,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTConsultingPhysicianIdentificationSequence &getConsultingPhysicianIdentificationSequence() const
{ return ConsultingPhysicianIdentificationSequence; }
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return reference to sequence element
+ */
+ DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence()
+ { return ContextGroupIdentificationSequence; }
+
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return const reference to sequence element
+ */
+ const DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence() const
+ { return ContextGroupIdentificationSequence; }
+
/** get ContributingEquipmentSequence (0018,a001)
* @return reference to sequence element
*/
const DRTDeidentificationMethodCodeSequence &getDeidentificationMethodCodeSequence() const
{ return DeidentificationMethodCodeSequence; }
+ /** get DerivationCodeSequence (0008,9215)
+ * @return reference to sequence element
+ */
+ DRTDerivationCodeSequence &getDerivationCodeSequence()
+ { return DerivationCodeSequence; }
+
+ /** get DerivationCodeSequence (0008,9215)
+ * @return const reference to sequence element
+ */
+ const DRTDerivationCodeSequence &getDerivationCodeSequence() const
+ { return DerivationCodeSequence; }
+
/** get DigitalSignaturesSequence (fffa,fffa)
* @return reference to sequence element
*/
const DRTFractionGroupSummarySequence &getFractionGroupSummarySequence() const
{ return FractionGroupSummarySequence; }
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return reference to sequence element
+ */
+ DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence()
+ { return GroupOfPatientsIdentificationSequence; }
+
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return const reference to sequence element
+ */
+ const DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence() const
+ { return GroupOfPatientsIdentificationSequence; }
+
/** get HL7StructuredDocumentReferenceSequence (0040,a390)
* @return reference to sequence element
*/
const DRTMACParametersSequence &getMACParametersSequence() const
{ return MACParametersSequence; }
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return reference to sequence element
+ */
+ DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence()
+ { return MappingResourceIdentificationSequence; }
+
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return const reference to sequence element
+ */
+ const DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence() const
+ { return MappingResourceIdentificationSequence; }
+
/** get MeasuredDoseReferenceSequence (3008,0010)
* @return reference to sequence element
*/
const DRTMeasuredDoseReferenceSequence &getMeasuredDoseReferenceSequence() const
{ return MeasuredDoseReferenceSequence; }
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
/** get OriginalAttributesSequence (0400,0561)
* @return reference to sequence element
*/
const DRTReasonForPerformedProcedureCodeSequence &getReasonForPerformedProcedureCodeSequence() const
{ return ReasonForPerformedProcedureCodeSequence; }
+ /** get ReferencedImageSequence (0008,1140)
+ * @return reference to sequence element
+ */
+ DRTReferencedImageSequence &getReferencedImageSequence()
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedImageSequence (0008,1140)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedImageSequence &getReferencedImageSequence() const
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return reference to sequence element
+ */
+ DRTReferencedInstanceSequence &getReferencedInstanceSequence()
+ { return ReferencedInstanceSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedInstanceSequence &getReferencedInstanceSequence() const
+ { return ReferencedInstanceSequence; }
+
/** get ReferencedPatientPhotoSequence (0010,1100)
* @return reference to sequence element
*/
const DRTSeriesDescriptionCodeSequence &getSeriesDescriptionCodeSequence() const
{ return SeriesDescriptionCodeSequence; }
+ /** get SourceImageSequence (0008,2112)
+ * @return reference to sequence element
+ */
+ DRTSourceImageSequence &getSourceImageSequence()
+ { return SourceImageSequence; }
+
+ /** get SourceImageSequence (0008,2112)
+ * @return const reference to sequence element
+ */
+ const DRTSourceImageSequence &getSourceImageSequence() const
+ { return SourceImageSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return reference to sequence element
+ */
+ DRTSourceInstanceSequence &getSourceInstanceSequence()
+ { return SourceInstanceSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return const reference to sequence element
+ */
+ const DRTSourceInstanceSequence &getSourceInstanceSequence() const
+ { return SourceInstanceSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return reference to sequence element
+ */
+ DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence()
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return const reference to sequence element
+ */
+ const DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence() const
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return reference to sequence element
+ */
+ DRTStrainCodeSequence &getStrainCodeSequence()
+ { return StrainCodeSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return const reference to sequence element
+ */
+ const DRTStrainCodeSequence &getStrainCodeSequence() const
+ { return StrainCodeSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return reference to sequence element
+ */
+ DRTStrainStockSequence &getStrainStockSequence()
+ { return StrainStockSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return const reference to sequence element
+ */
+ const DRTStrainStockSequence &getStrainStockSequence() const
+ { return StrainStockSequence; }
+
/** get StudiesContainingOtherReferencedInstancesSequence (0008,1200)
* @return reference to sequence element
*/
const DRTTreatmentSummaryMeasuredDoseReferenceSequence &getTreatmentSummaryMeasuredDoseReferenceSequence() const
{ return TreatmentSummaryMeasuredDoseReferenceSequence; }
+ /** get UDISequence (0018,100a)
+ * @return reference to sequence element
+ */
+ DRTUDISequence &getUDISequence()
+ { return UDISequence; }
+
+ /** get UDISequence (0018,100a)
+ * @return const reference to sequence element
+ */
+ const DRTUDISequence &getUDISequence() const
+ { return UDISequence; }
+
// --- set DICOM attribute values ---
/** set AccessionNumber (0008,0050)
*/
virtual OFCondition setAdmittingDiagnosesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set Allergies (0010,2110)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setAllergies(const OFString &value, const OFBool check = OFTrue);
+
/** set AuthorizationEquipmentCertificationNumber (0100,0426)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setDeidentificationMethod(const OFString &value, const OFBool check = OFTrue);
+ /** set DerivationDescription (0008,2111)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDerivationDescription(const OFString &value, const OFBool check = OFTrue);
+
/** set DeviceSerialNumber (0018,1000)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setIssuerOfPatientID(const OFString &value, const OFBool check = OFTrue);
+ /** set LastMenstrualDate (0010,21d0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLastMenstrualDate(const OFString &value, const OFBool check = OFTrue);
+
/** set LongitudinalTemporalInformationModified (0028,0303)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set MeasuredAPDimension (0010,1023)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredAPDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MeasuredLateralDimension (0010,1024)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredLateralDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MedicalAlerts (0010,2000)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMedicalAlerts(const OFString &value, const OFBool check = OFTrue);
+
/** set Modality (0008,0060)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setPatientAge(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientAlternativeCalendar (0010,0035)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthDate (0010,0030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthDate(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthTime (0010,0032)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (TM) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthTime(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBodyMassIndex (0010,1022)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBodyMassIndex(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBreedDescription (0010,2292)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientComments(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientID (0010,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientSpeciesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientState (0038,0500)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientState(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientWeight (0010,1030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
virtual OFCondition setPixelPaddingValue(const Uint16 value, const unsigned long pos = 0);
+ /** set PregnancyStatus (0010,21c0)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPregnancyStatus(const Uint16 value, const unsigned long pos = 0);
+
/** set PrimaryDosimeterUnit (300a,00b3)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setServiceEpisodeID(const OFString &value, const OFBool check = OFTrue);
+ /** set SmokingStatus (0010,21a0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSmokingStatus(const OFString &value, const OFBool check = OFTrue);
+
/** set SoftwareVersions (0018,1020)
* @param value value to be set (possibly multi-valued) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
*/
virtual OFCondition setStationName(const OFString &value, const OFBool check = OFTrue);
+ /** set StrainAdditionalInformation (0010,0218)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainAdditionalInformation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainDescription (0010,0212)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainNomenclature (0010,0213)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainNomenclature(const OFString &value, const OFBool check = OFTrue);
+
/** set StudyDate (0008,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
/// PatientBirthDate (0010,0030) vr=DA, vm=1, type=2
DcmDate PatientBirthDate;
+ /// PatientBirthDateInAlternativeCalendar (0010,0033) vr=LO, vm=1, type=3
+ DcmLongString PatientBirthDateInAlternativeCalendar;
+ /// PatientDeathDateInAlternativeCalendar (0010,0034) vr=LO, vm=1, type=3
+ DcmLongString PatientDeathDateInAlternativeCalendar;
+ /// PatientAlternativeCalendar (0010,0035) vr=CS, vm=1, type=1C
+ DcmCodeString PatientAlternativeCalendar;
/// PatientSex (0010,0040) vr=CS, vm=1, type=2
DcmCodeString PatientSex;
/// ReferencedPatientPhotoSequence (0010,1100) vr=SQ, vm=1, type=3
DRTPatientBreedCodeSequence PatientBreedCodeSequence;
/// BreedRegistrationSequence (0010,2294) vr=SQ, vm=1, type=2C
DRTBreedRegistrationSequence BreedRegistrationSequence;
+ /// StrainDescription (0010,0212) vr=UC, vm=1, type=3
+ DcmUnlimitedCharacters StrainDescription;
+ /// StrainNomenclature (0010,0213) vr=LO, vm=1, type=3
+ DcmLongString StrainNomenclature;
+ /// StrainCodeSequence (0010,0219) vr=SQ, vm=1, type=3
+ DRTStrainCodeSequence StrainCodeSequence;
+ /// StrainAdditionalInformation (0010,0218) vr=UT, vm=1, type=3
+ DcmUnlimitedText StrainAdditionalInformation;
+ /// StrainStockSequence (0010,0216) vr=SQ, vm=1, type=3
+ DRTStrainStockSequence StrainStockSequence;
/// ResponsiblePerson (0010,2297) vr=PN, vm=1, type=2C
DcmPersonName ResponsiblePerson;
/// ResponsiblePersonRole (0010,2298) vr=CS, vm=1, type=1C
DcmLongString DeidentificationMethod;
/// DeidentificationMethodCodeSequence (0012,0064) vr=SQ, vm=1, type=1C
DRTDeidentificationMethodCodeSequence DeidentificationMethodCodeSequence;
+ /// SourcePatientGroupIdentificationSequence (0010,0026) vr=SQ, vm=1, type=3
+ DRTSourcePatientGroupIdentificationSequence SourcePatientGroupIdentificationSequence;
+ /// GroupOfPatientsIdentificationSequence (0010,0027) vr=SQ, vm=1, type=3
+ DRTGroupOfPatientsIdentificationSequence GroupOfPatientsIdentificationSequence;
// --- ClinicalTrialSubjectModule (U) ---
DcmDecimalString PatientSize;
/// PatientWeight (0010,1030) vr=DS, vm=1, type=3
DcmDecimalString PatientWeight;
+ /// PatientBodyMassIndex (0010,1022) vr=DS, vm=1, type=3
+ DcmDecimalString PatientBodyMassIndex;
+ /// MeasuredAPDimension (0010,1023) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredAPDimension;
+ /// MeasuredLateralDimension (0010,1024) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredLateralDimension;
/// PatientSizeCodeSequence (0010,1021) vr=SQ, vm=1, type=3
DRTPatientSizeCodeSequence PatientSizeCodeSequence;
+ /// MedicalAlerts (0010,2000) vr=LO, vm=1-n, type=3
+ DcmLongString MedicalAlerts;
+ /// Allergies (0010,2110) vr=LO, vm=1-n, type=3
+ DcmLongString Allergies;
+ /// SmokingStatus (0010,21a0) vr=CS, vm=1, type=3
+ DcmCodeString SmokingStatus;
+ /// PregnancyStatus (0010,21c0) vr=US, vm=1, type=3
+ DcmUnsignedShort PregnancyStatus;
+ /// LastMenstrualDate (0010,21d0) vr=DA, vm=1, type=3
+ DcmDate LastMenstrualDate;
+ /// PatientState (0038,0500) vr=LO, vm=1, type=3
+ DcmLongString PatientState;
/// Occupation (0010,2180) vr=SH, vm=1, type=3
DcmShortString Occupation;
/// AdditionalPatientHistory (0010,21b0) vr=LT, vm=1, type=3
DRTSeriesDescriptionCodeSequence SeriesDescriptionCodeSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// ReferencedPerformedProcedureStepSequence (0008,1111) vr=SQ, vm=1, type=3
DRTReferencedPerformedProcedureStepSequence ReferencedPerformedProcedureStepSequence;
/// RequestAttributesSequence (0040,0275) vr=SQ, vm=1, type=3
DcmLongString SoftwareVersions;
/// GantryID (0018,1008) vr=LO, vm=1, type=3
DcmLongString GantryID;
+ /// UDISequence (0018,100a) vr=SQ, vm=1, type=3
+ DRTUDISequence UDISequence;
/// SpatialResolution (0018,1050) vr=DS, vm=1, type=3
DcmDecimalString SpatialResolution;
/// DateOfLastCalibration (0018,1200) vr=DA, vm=1-n, type=3
/// TreatmentSummaryCalculatedDoseReferenceSequence (3008,0050) vr=SQ, vm=1, type=3
DRTTreatmentSummaryCalculatedDoseReferenceSequence TreatmentSummaryCalculatedDoseReferenceSequence;
+ // --- GeneralReferenceModule (U) ---
+
+ /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
+ DRTReferencedImageSequence ReferencedImageSequence;
+ /// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
+ DRTReferencedInstanceSequence ReferencedInstanceSequence;
+ /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
+ DcmShortText DerivationDescription;
+ /// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
+ DRTDerivationCodeSequence DerivationCodeSequence;
+ /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
+ DRTSourceImageSequence SourceImageSequence;
+ /// SourceInstanceSequence (0042,0013) vr=SQ, vm=1, type=3
+ DRTSourceInstanceSequence SourceInstanceSequence;
+
// --- SOPCommonModule (M) ---
/// SOPClassUID (0008,0016) vr=UI, vm=1, type=1
DcmUniqueIdentifier OriginalSpecializedSOPClassUID;
/// CodingSchemeIdentificationSequence (0008,0110) vr=SQ, vm=1, type=3
DRTCodingSchemeIdentificationSequence CodingSchemeIdentificationSequence;
+ /// ContextGroupIdentificationSequence (0008,0123) vr=SQ, vm=1, type=3
+ DRTContextGroupIdentificationSequence ContextGroupIdentificationSequence;
+ /// MappingResourceIdentificationSequence (0008,0124) vr=SQ, vm=1, type=3
+ DRTMappingResourceIdentificationSequence MappingResourceIdentificationSequence;
/// TimezoneOffsetFromUTC (0008,0201) vr=SH, vm=1, type=3
DcmShortString TimezoneOffsetFromUTC;
/// ContributingEquipmentSequence (0018,a001) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPlanIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/seq/drtcsis.h" // for CodingSchemeIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcctus.h" // for ConsentForClinicalTrialUseSequence
#include "dcmtk/dcmrt/seq/drtcpis.h" // for ConsultingPhysicianIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtcgis.h" // for ContextGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtces.h" // for ContributingEquipmentSequence
#include "dcmtk/dcmrt/seq/drtcsas.h" // for ConversionSourceAttributesSequence
#include "dcmtk/dcmrt/seq/drtdimcs.h" // for DeidentificationMethodCodeSequence
+#include "dcmtk/dcmrt/seq/drtdcs.h" // for DerivationCodeSequence
#include "dcmtk/dcmrt/seq/drtdss.h" // for DigitalSignaturesSequence
#include "dcmtk/dcmrt/seq/drtdrs.h" // for DoseReferenceSequence
#include "dcmtk/dcmrt/seq/drteas.h" // for EncryptedAttributesSequence
#include "dcmtk/dcmrt/seq/drtfgs.h" // for FractionGroupSequence
+#include "dcmtk/dcmrt/seq/drtgpis.h" // for GroupOfPatientsIdentificationSequence
#include "dcmtk/dcmrt/seq/drthsdrs.h" // for HL7StructuredDocumentReferenceSequence
#include "dcmtk/dcmrt/seq/drtians.h" // for IssuerOfAccessionNumberSequence
#include "dcmtk/dcmrt/seq/drtiais.h" // for IssuerOfAdmissionIDSequence
#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
#include "dcmtk/dcmrt/seq/drtiseis.h" // for IssuerOfServiceEpisodeIDSequence
#include "dcmtk/dcmrt/seq/drtmps.h" // for MACParametersSequence
+#include "dcmtk/dcmrt/seq/drtmris.h" // for MappingResourceIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
#include "dcmtk/dcmrt/seq/drtoas.h" // for OriginalAttributesSequence
#include "dcmtk/dcmrt/seq/drtopis.h" // for OtherPatientIDsSequence
#include "dcmtk/dcmrt/seq/drtpbcs.h" // for PatientBreedCodeSequence
#include "dcmtk/dcmrt/seq/drtpcs.h" // for ProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrppcs.h" // for ReasonForPerformedProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrds.h" // for ReferencedDoseSequence
+#include "dcmtk/dcmrt/seq/drtrims.h" // for ReferencedImageSequence
+#include "dcmtk/dcmrt/seq/drtris.h" // for ReferencedInstanceSequence
#include "dcmtk/dcmrt/seq/drtrpphs.h" // for ReferencedPatientPhotoSequence
#include "dcmtk/dcmrt/seq/drtrps.h" // for ReferencedPatientSequence
#include "dcmtk/dcmrt/seq/drtrppss.h" // for ReferencedPerformedProcedureStepSequence
#include "dcmtk/dcmrt/seq/drtras.h" // for RequestAttributesSequence
#include "dcmtk/dcmrt/seq/drtrscs.h" // for RequestingServiceCodeSequence
#include "dcmtk/dcmrt/seq/drtsdcs.h" // for SeriesDescriptionCodeSequence
+#include "dcmtk/dcmrt/seq/drtsis.h" // for SourceImageSequence
+#include "dcmtk/dcmrt/seq/drtsins.h" // for SourceInstanceSequence
+#include "dcmtk/dcmrt/seq/drtspgis.h" // for SourcePatientGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtss.h" // for SourceSequence
+#include "dcmtk/dcmrt/seq/drtscs.h" // for StrainCodeSequence
+#include "dcmtk/dcmrt/seq/drtsss.h" // for StrainStockSequence
#include "dcmtk/dcmrt/seq/drtscris.h" // for StudiesContainingOtherReferencedInstancesSequence
#include "dcmtk/dcmrt/seq/drttts.h" // for ToleranceTableSequence
#include "dcmtk/dcmrt/seq/drttms9.h" // for TreatmentMachineSequence
+#include "dcmtk/dcmrt/seq/drtudis.h" // for UDISequence
/** Interface class for RTPlanIOD
*/
virtual OFBool isApprovalModulePresent(const OFBool complete = OFFalse);
+ /** check whether GeneralReferenceModule (U) is present.
+ * By default, a module is reported as being present if at least one attribute
+ * from this module has a non-empty value.
+ * @param complete check for all mandatory attributes of this module if enabled
+ * @return OFTrue if module is present, OFFalse otherwise
+ */
+ virtual OFBool isGeneralReferenceModulePresent(const OFBool complete = OFFalse);
+
/** check whether CommonInstanceReferenceModule (U) is present.
* By default, a module is reported as being present if at least one attribute
* from this module has a non-empty value.
*/
virtual OFCondition getAdmittingDiagnosesDescription(OFString &value, const signed long pos = 0) const;
+ /** get Allergies (0010,2110)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getAllergies(OFString &value, const signed long pos = 0) const;
+
/** get ApprovalStatus (300e,0002)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getDeidentificationMethod(OFString &value, const signed long pos = 0) const;
+ /** get DerivationDescription (0008,2111)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDerivationDescription(OFString &value, const signed long pos = 0) const;
+
/** get DeviceSerialNumber (0018,1000)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getEthnicGroup(OFString &value, const signed long pos = 0) const;
+ /** get FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix (0070,030b)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(Float64 &value, const unsigned long pos = 0) const;
+
/** get FrameOfReferenceUID (0020,0052)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getIssuerOfPatientID(OFString &value, const signed long pos = 0) const;
+ /** get LastMenstrualDate (0010,21d0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLastMenstrualDate(OFString &value, const signed long pos = 0) const;
+
/** get LongitudinalTemporalInformationModified (0028,0303)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MedicalAlerts (0010,2000)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMedicalAlerts(OFString &value, const signed long pos = 0) const;
+
/** get Modality (0008,0060)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientAge(OFString &value, const signed long pos = 0) const;
+ /** get PatientAlternativeCalendar (0010,0035)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthDate (0010,0030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthDate(OFString &value, const signed long pos = 0) const;
+ /** get PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthTime (0010,0032)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthTime(OFString &value, const signed long pos = 0) const;
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientBreedDescription (0010,2292)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientComments(OFString &value, const signed long pos = 0) const;
+ /** get PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientID (0010,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientSpeciesDescription(OFString &value, const signed long pos = 0) const;
+ /** get PatientState (0038,0500)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientState(OFString &value, const signed long pos = 0) const;
+
/** get PatientWeight (0010,1030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPositionReferenceIndicator(OFString &value, const signed long pos = 0) const;
+ /** get PregnancyStatus (0010,21c0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPregnancyStatus(Uint16 &value, const unsigned long pos = 0) const;
+
/** get PrescriptionDescription (300a,000e)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getServiceEpisodeID(OFString &value, const signed long pos = 0) const;
+ /** get SmokingStatus (0010,21a0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSmokingStatus(OFString &value, const signed long pos = 0) const;
+
/** get SoftwareVersions (0018,1020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getStationName(OFString &value, const signed long pos = 0) const;
+ /** get StrainAdditionalInformation (0010,0218)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainAdditionalInformation(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainDescription (0010,0212)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainNomenclature (0010,0213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainNomenclature(OFString &value, const signed long pos = 0) const;
+
/** get StudyDate (0008,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTConsultingPhysicianIdentificationSequence &getConsultingPhysicianIdentificationSequence() const
{ return ConsultingPhysicianIdentificationSequence; }
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return reference to sequence element
+ */
+ DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence()
+ { return ContextGroupIdentificationSequence; }
+
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return const reference to sequence element
+ */
+ const DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence() const
+ { return ContextGroupIdentificationSequence; }
+
/** get ContributingEquipmentSequence (0018,a001)
* @return reference to sequence element
*/
const DRTDeidentificationMethodCodeSequence &getDeidentificationMethodCodeSequence() const
{ return DeidentificationMethodCodeSequence; }
+ /** get DerivationCodeSequence (0008,9215)
+ * @return reference to sequence element
+ */
+ DRTDerivationCodeSequence &getDerivationCodeSequence()
+ { return DerivationCodeSequence; }
+
+ /** get DerivationCodeSequence (0008,9215)
+ * @return const reference to sequence element
+ */
+ const DRTDerivationCodeSequence &getDerivationCodeSequence() const
+ { return DerivationCodeSequence; }
+
/** get DigitalSignaturesSequence (fffa,fffa)
* @return reference to sequence element
*/
const DRTFractionGroupSequence &getFractionGroupSequence() const
{ return FractionGroupSequence; }
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return reference to sequence element
+ */
+ DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence()
+ { return GroupOfPatientsIdentificationSequence; }
+
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return const reference to sequence element
+ */
+ const DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence() const
+ { return GroupOfPatientsIdentificationSequence; }
+
/** get HL7StructuredDocumentReferenceSequence (0040,a390)
* @return reference to sequence element
*/
const DRTMACParametersSequence &getMACParametersSequence() const
{ return MACParametersSequence; }
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return reference to sequence element
+ */
+ DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence()
+ { return MappingResourceIdentificationSequence; }
+
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return const reference to sequence element
+ */
+ const DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence() const
+ { return MappingResourceIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
/** get OriginalAttributesSequence (0400,0561)
* @return reference to sequence element
*/
const DRTReferencedDoseSequence &getReferencedDoseSequence() const
{ return ReferencedDoseSequence; }
+ /** get ReferencedImageSequence (0008,1140)
+ * @return reference to sequence element
+ */
+ DRTReferencedImageSequence &getReferencedImageSequence()
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedImageSequence (0008,1140)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedImageSequence &getReferencedImageSequence() const
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return reference to sequence element
+ */
+ DRTReferencedInstanceSequence &getReferencedInstanceSequence()
+ { return ReferencedInstanceSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedInstanceSequence &getReferencedInstanceSequence() const
+ { return ReferencedInstanceSequence; }
+
/** get ReferencedPatientPhotoSequence (0010,1100)
* @return reference to sequence element
*/
const DRTSeriesDescriptionCodeSequence &getSeriesDescriptionCodeSequence() const
{ return SeriesDescriptionCodeSequence; }
+ /** get SourceImageSequence (0008,2112)
+ * @return reference to sequence element
+ */
+ DRTSourceImageSequence &getSourceImageSequence()
+ { return SourceImageSequence; }
+
+ /** get SourceImageSequence (0008,2112)
+ * @return const reference to sequence element
+ */
+ const DRTSourceImageSequence &getSourceImageSequence() const
+ { return SourceImageSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return reference to sequence element
+ */
+ DRTSourceInstanceSequence &getSourceInstanceSequence()
+ { return SourceInstanceSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return const reference to sequence element
+ */
+ const DRTSourceInstanceSequence &getSourceInstanceSequence() const
+ { return SourceInstanceSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return reference to sequence element
+ */
+ DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence()
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return const reference to sequence element
+ */
+ const DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence() const
+ { return SourcePatientGroupIdentificationSequence; }
+
/** get SourceSequence (300a,0210)
* @return reference to sequence element
*/
const DRTSourceSequence &getSourceSequence() const
{ return SourceSequence; }
+ /** get StrainCodeSequence (0010,0219)
+ * @return reference to sequence element
+ */
+ DRTStrainCodeSequence &getStrainCodeSequence()
+ { return StrainCodeSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return const reference to sequence element
+ */
+ const DRTStrainCodeSequence &getStrainCodeSequence() const
+ { return StrainCodeSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return reference to sequence element
+ */
+ DRTStrainStockSequence &getStrainStockSequence()
+ { return StrainStockSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return const reference to sequence element
+ */
+ const DRTStrainStockSequence &getStrainStockSequence() const
+ { return StrainStockSequence; }
+
/** get StudiesContainingOtherReferencedInstancesSequence (0008,1200)
* @return reference to sequence element
*/
const DRTTreatmentMachineSequenceInRTBrachyApplicationSetupsModule &getTreatmentMachineSequence() const
{ return TreatmentMachineSequence; }
+ /** get UDISequence (0018,100a)
+ * @return reference to sequence element
+ */
+ DRTUDISequence &getUDISequence()
+ { return UDISequence; }
+
+ /** get UDISequence (0018,100a)
+ * @return const reference to sequence element
+ */
+ const DRTUDISequence &getUDISequence() const
+ { return UDISequence; }
+
// --- set DICOM attribute values ---
/** set AccessionNumber (0008,0050)
*/
virtual OFCondition setAdmittingDiagnosesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set Allergies (0010,2110)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setAllergies(const OFString &value, const OFBool check = OFTrue);
+
/** set ApprovalStatus (300e,0002)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setDeidentificationMethod(const OFString &value, const OFBool check = OFTrue);
+ /** set DerivationDescription (0008,2111)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDerivationDescription(const OFString &value, const OFBool check = OFTrue);
+
/** set DeviceSerialNumber (0018,1000)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setEthnicGroup(const OFString &value, const OFBool check = OFTrue);
+ /** set FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix (0070,030b)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=16
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(const Float64 value, const unsigned long pos = 0);
+
/** set FrameOfReferenceUID (0020,0052)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
*/
virtual OFCondition setIssuerOfPatientID(const OFString &value, const OFBool check = OFTrue);
+ /** set LastMenstrualDate (0010,21d0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLastMenstrualDate(const OFString &value, const OFBool check = OFTrue);
+
/** set LongitudinalTemporalInformationModified (0028,0303)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set MeasuredAPDimension (0010,1023)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredAPDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MeasuredLateralDimension (0010,1024)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredLateralDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MedicalAlerts (0010,2000)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMedicalAlerts(const OFString &value, const OFBool check = OFTrue);
+
/** set Modality (0008,0060)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setPatientAge(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientAlternativeCalendar (0010,0035)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthDate (0010,0030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthDate(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthTime (0010,0032)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (TM) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthTime(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBodyMassIndex (0010,1022)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBodyMassIndex(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBreedDescription (0010,2292)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientComments(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientID (0010,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientSpeciesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientState (0038,0500)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientState(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientWeight (0010,1030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
virtual OFCondition setPositionReferenceIndicator(const OFString &value, const OFBool check = OFTrue);
+ /** set PregnancyStatus (0010,21c0)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPregnancyStatus(const Uint16 value, const unsigned long pos = 0);
+
/** set PrescriptionDescription (300a,000e)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
*/
virtual OFCondition setServiceEpisodeID(const OFString &value, const OFBool check = OFTrue);
+ /** set SmokingStatus (0010,21a0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSmokingStatus(const OFString &value, const OFBool check = OFTrue);
+
/** set SoftwareVersions (0018,1020)
* @param value value to be set (possibly multi-valued) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
*/
virtual OFCondition setStationName(const OFString &value, const OFBool check = OFTrue);
+ /** set StrainAdditionalInformation (0010,0218)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainAdditionalInformation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainDescription (0010,0212)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainNomenclature (0010,0213)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainNomenclature(const OFString &value, const OFBool check = OFTrue);
+
/** set StudyDate (0008,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
/// PatientBirthDate (0010,0030) vr=DA, vm=1, type=2
DcmDate PatientBirthDate;
+ /// PatientBirthDateInAlternativeCalendar (0010,0033) vr=LO, vm=1, type=3
+ DcmLongString PatientBirthDateInAlternativeCalendar;
+ /// PatientDeathDateInAlternativeCalendar (0010,0034) vr=LO, vm=1, type=3
+ DcmLongString PatientDeathDateInAlternativeCalendar;
+ /// PatientAlternativeCalendar (0010,0035) vr=CS, vm=1, type=1C
+ DcmCodeString PatientAlternativeCalendar;
/// PatientSex (0010,0040) vr=CS, vm=1, type=2
DcmCodeString PatientSex;
/// ReferencedPatientPhotoSequence (0010,1100) vr=SQ, vm=1, type=3
DRTPatientBreedCodeSequence PatientBreedCodeSequence;
/// BreedRegistrationSequence (0010,2294) vr=SQ, vm=1, type=2C
DRTBreedRegistrationSequence BreedRegistrationSequence;
+ /// StrainDescription (0010,0212) vr=UC, vm=1, type=3
+ DcmUnlimitedCharacters StrainDescription;
+ /// StrainNomenclature (0010,0213) vr=LO, vm=1, type=3
+ DcmLongString StrainNomenclature;
+ /// StrainCodeSequence (0010,0219) vr=SQ, vm=1, type=3
+ DRTStrainCodeSequence StrainCodeSequence;
+ /// StrainAdditionalInformation (0010,0218) vr=UT, vm=1, type=3
+ DcmUnlimitedText StrainAdditionalInformation;
+ /// StrainStockSequence (0010,0216) vr=SQ, vm=1, type=3
+ DRTStrainStockSequence StrainStockSequence;
/// ResponsiblePerson (0010,2297) vr=PN, vm=1, type=2C
DcmPersonName ResponsiblePerson;
/// ResponsiblePersonRole (0010,2298) vr=CS, vm=1, type=1C
DcmLongString DeidentificationMethod;
/// DeidentificationMethodCodeSequence (0012,0064) vr=SQ, vm=1, type=1C
DRTDeidentificationMethodCodeSequence DeidentificationMethodCodeSequence;
+ /// SourcePatientGroupIdentificationSequence (0010,0026) vr=SQ, vm=1, type=3
+ DRTSourcePatientGroupIdentificationSequence SourcePatientGroupIdentificationSequence;
+ /// GroupOfPatientsIdentificationSequence (0010,0027) vr=SQ, vm=1, type=3
+ DRTGroupOfPatientsIdentificationSequence GroupOfPatientsIdentificationSequence;
// --- ClinicalTrialSubjectModule (U) ---
DcmDecimalString PatientSize;
/// PatientWeight (0010,1030) vr=DS, vm=1, type=3
DcmDecimalString PatientWeight;
+ /// PatientBodyMassIndex (0010,1022) vr=DS, vm=1, type=3
+ DcmDecimalString PatientBodyMassIndex;
+ /// MeasuredAPDimension (0010,1023) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredAPDimension;
+ /// MeasuredLateralDimension (0010,1024) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredLateralDimension;
/// PatientSizeCodeSequence (0010,1021) vr=SQ, vm=1, type=3
DRTPatientSizeCodeSequence PatientSizeCodeSequence;
+ /// MedicalAlerts (0010,2000) vr=LO, vm=1-n, type=3
+ DcmLongString MedicalAlerts;
+ /// Allergies (0010,2110) vr=LO, vm=1-n, type=3
+ DcmLongString Allergies;
+ /// SmokingStatus (0010,21a0) vr=CS, vm=1, type=3
+ DcmCodeString SmokingStatus;
+ /// PregnancyStatus (0010,21c0) vr=US, vm=1, type=3
+ DcmUnsignedShort PregnancyStatus;
+ /// LastMenstrualDate (0010,21d0) vr=DA, vm=1, type=3
+ DcmDate LastMenstrualDate;
+ /// PatientState (0038,0500) vr=LO, vm=1, type=3
+ DcmLongString PatientState;
/// Occupation (0010,2180) vr=SH, vm=1, type=3
DcmShortString Occupation;
/// AdditionalPatientHistory (0010,21b0) vr=LT, vm=1, type=3
DRTSeriesDescriptionCodeSequence SeriesDescriptionCodeSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// ReferencedPerformedProcedureStepSequence (0008,1111) vr=SQ, vm=1, type=3
DRTReferencedPerformedProcedureStepSequence ReferencedPerformedProcedureStepSequence;
/// RequestAttributesSequence (0040,0275) vr=SQ, vm=1, type=3
DcmLongString SoftwareVersions;
/// GantryID (0018,1008) vr=LO, vm=1, type=3
DcmLongString GantryID;
+ /// UDISequence (0018,100a) vr=SQ, vm=1, type=3
+ DRTUDISequence UDISequence;
/// SpatialResolution (0018,1050) vr=DS, vm=1, type=3
DcmDecimalString SpatialResolution;
/// DateOfLastCalibration (0018,1200) vr=DA, vm=1-n, type=3
DRTReferencedDoseSequence ReferencedDoseSequence;
/// ReferencedRTPlanSequence (300c,0002) vr=SQ, vm=1, type=3
DRTReferencedRTPlanSequenceInRTGeneralPlanModule ReferencedRTPlanSequence;
+ /// FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix (0070,030b) vr=FD, vm=16, type=3
+ DcmFloatingPointDouble FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix;
// --- RTPrescriptionModule (U) ---
/// ReviewerName (300e,0008) vr=PN, vm=1, type=2C
DcmPersonName ReviewerName;
+ // --- GeneralReferenceModule (U) ---
+
+ /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
+ DRTReferencedImageSequence ReferencedImageSequence;
+ /// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
+ DRTReferencedInstanceSequence ReferencedInstanceSequence;
+ /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
+ DcmShortText DerivationDescription;
+ /// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
+ DRTDerivationCodeSequence DerivationCodeSequence;
+ /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
+ DRTSourceImageSequence SourceImageSequence;
+ /// SourceInstanceSequence (0042,0013) vr=SQ, vm=1, type=3
+ DRTSourceInstanceSequence SourceInstanceSequence;
+
// --- SOPCommonModule (M) ---
/// SOPClassUID (0008,0016) vr=UI, vm=1, type=1
DcmUniqueIdentifier OriginalSpecializedSOPClassUID;
/// CodingSchemeIdentificationSequence (0008,0110) vr=SQ, vm=1, type=3
DRTCodingSchemeIdentificationSequence CodingSchemeIdentificationSequence;
+ /// ContextGroupIdentificationSequence (0008,0123) vr=SQ, vm=1, type=3
+ DRTContextGroupIdentificationSequence ContextGroupIdentificationSequence;
+ /// MappingResourceIdentificationSequence (0008,0124) vr=SQ, vm=1, type=3
+ DRTMappingResourceIdentificationSequence MappingResourceIdentificationSequence;
/// TimezoneOffsetFromUTC (0008,0201) vr=SH, vm=1, type=3
DcmShortString TimezoneOffsetFromUTC;
/// ContributingEquipmentSequence (0018,a001) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTStructureSetIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/seq/drtcsis.h" // for CodingSchemeIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcctus.h" // for ConsentForClinicalTrialUseSequence
#include "dcmtk/dcmrt/seq/drtcpis.h" // for ConsultingPhysicianIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtcgis.h" // for ContextGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtces.h" // for ContributingEquipmentSequence
#include "dcmtk/dcmrt/seq/drtcsas.h" // for ConversionSourceAttributesSequence
#include "dcmtk/dcmrt/seq/drtdimcs.h" // for DeidentificationMethodCodeSequence
+#include "dcmtk/dcmrt/seq/drtdcs.h" // for DerivationCodeSequence
#include "dcmtk/dcmrt/seq/drtdss.h" // for DigitalSignaturesSequence
#include "dcmtk/dcmrt/seq/drteas.h" // for EncryptedAttributesSequence
+#include "dcmtk/dcmrt/seq/drtgpis.h" // for GroupOfPatientsIdentificationSequence
#include "dcmtk/dcmrt/seq/drthsdrs.h" // for HL7StructuredDocumentReferenceSequence
#include "dcmtk/dcmrt/seq/drtians.h" // for IssuerOfAccessionNumberSequence
#include "dcmtk/dcmrt/seq/drtiais.h" // for IssuerOfAdmissionIDSequence
#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
#include "dcmtk/dcmrt/seq/drtiseis.h" // for IssuerOfServiceEpisodeIDSequence
#include "dcmtk/dcmrt/seq/drtmps.h" // for MACParametersSequence
+#include "dcmtk/dcmrt/seq/drtmris.h" // for MappingResourceIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
#include "dcmtk/dcmrt/seq/drtoas.h" // for OriginalAttributesSequence
#include "dcmtk/dcmrt/seq/drtopis.h" // for OtherPatientIDsSequence
#include "dcmtk/dcmrt/seq/drtpbcs.h" // for PatientBreedCodeSequence
#include "dcmtk/dcmrt/seq/drtrros.h" // for RTROIObservationsSequence
#include "dcmtk/dcmrt/seq/drtrppcs.h" // for ReasonForPerformedProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrfors.h" // for ReferencedFrameOfReferenceSequence
+#include "dcmtk/dcmrt/seq/drtrims.h" // for ReferencedImageSequence
+#include "dcmtk/dcmrt/seq/drtris.h" // for ReferencedInstanceSequence
#include "dcmtk/dcmrt/seq/drtrpphs.h" // for ReferencedPatientPhotoSequence
#include "dcmtk/dcmrt/seq/drtrps.h" // for ReferencedPatientSequence
#include "dcmtk/dcmrt/seq/drtrppss.h" // for ReferencedPerformedProcedureStepSequence
#include "dcmtk/dcmrt/seq/drtras.h" // for RequestAttributesSequence
#include "dcmtk/dcmrt/seq/drtrscs.h" // for RequestingServiceCodeSequence
#include "dcmtk/dcmrt/seq/drtsdcs.h" // for SeriesDescriptionCodeSequence
+#include "dcmtk/dcmrt/seq/drtsis.h" // for SourceImageSequence
+#include "dcmtk/dcmrt/seq/drtsins.h" // for SourceInstanceSequence
+#include "dcmtk/dcmrt/seq/drtspgis.h" // for SourcePatientGroupIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtscs.h" // for StrainCodeSequence
+#include "dcmtk/dcmrt/seq/drtsss.h" // for StrainStockSequence
#include "dcmtk/dcmrt/seq/drtssrs.h" // for StructureSetROISequence
#include "dcmtk/dcmrt/seq/drtscris.h" // for StudiesContainingOtherReferencedInstancesSequence
+#include "dcmtk/dcmrt/seq/drtudis.h" // for UDISequence
/** Interface class for RTStructureSetIOD
*/
virtual OFBool isApprovalModulePresent(const OFBool complete = OFFalse);
+ /** check whether GeneralReferenceModule (U) is present.
+ * By default, a module is reported as being present if at least one attribute
+ * from this module has a non-empty value.
+ * @param complete check for all mandatory attributes of this module if enabled
+ * @return OFTrue if module is present, OFFalse otherwise
+ */
+ virtual OFBool isGeneralReferenceModulePresent(const OFBool complete = OFFalse);
+
/** check whether CommonInstanceReferenceModule (U) is present.
* By default, a module is reported as being present if at least one attribute
* from this module has a non-empty value.
*/
virtual OFCondition getAdmittingDiagnosesDescription(OFString &value, const signed long pos = 0) const;
+ /** get Allergies (0010,2110)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getAllergies(OFString &value, const signed long pos = 0) const;
+
/** get ApprovalStatus (300e,0002)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getDeidentificationMethod(OFString &value, const signed long pos = 0) const;
+ /** get DerivationDescription (0008,2111)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDerivationDescription(OFString &value, const signed long pos = 0) const;
+
/** get DeviceSerialNumber (0018,1000)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getIssuerOfPatientID(OFString &value, const signed long pos = 0) const;
+ /** get LastMenstrualDate (0010,21d0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLastMenstrualDate(OFString &value, const signed long pos = 0) const;
+
/** get LongitudinalTemporalInformationModified (0028,0303)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MedicalAlerts (0010,2000)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMedicalAlerts(OFString &value, const signed long pos = 0) const;
+
/** get Modality (0008,0060)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientAge(OFString &value, const signed long pos = 0) const;
+ /** get PatientAlternativeCalendar (0010,0035)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthDate (0010,0030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthDate(OFString &value, const signed long pos = 0) const;
+ /** get PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthTime (0010,0032)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthTime(OFString &value, const signed long pos = 0) const;
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientBreedDescription (0010,2292)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientComments(OFString &value, const signed long pos = 0) const;
+ /** get PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientID (0010,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientSpeciesDescription(OFString &value, const signed long pos = 0) const;
+ /** get PatientState (0038,0500)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientState(OFString &value, const signed long pos = 0) const;
+
/** get PatientWeight (0010,1030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPositionReferenceIndicator(OFString &value, const signed long pos = 0) const;
+ /** get PregnancyStatus (0010,21c0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPregnancyStatus(Uint16 &value, const unsigned long pos = 0) const;
+
/** get QualityControlSubject (0010,0200)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getServiceEpisodeID(OFString &value, const signed long pos = 0) const;
+ /** get SmokingStatus (0010,21a0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSmokingStatus(OFString &value, const signed long pos = 0) const;
+
/** get SoftwareVersions (0018,1020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getStationName(OFString &value, const signed long pos = 0) const;
+ /** get StrainAdditionalInformation (0010,0218)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainAdditionalInformation(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainDescription (0010,0212)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainNomenclature (0010,0213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainNomenclature(OFString &value, const signed long pos = 0) const;
+
/** get StructureSetDate (3006,0008)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTConsultingPhysicianIdentificationSequence &getConsultingPhysicianIdentificationSequence() const
{ return ConsultingPhysicianIdentificationSequence; }
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return reference to sequence element
+ */
+ DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence()
+ { return ContextGroupIdentificationSequence; }
+
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return const reference to sequence element
+ */
+ const DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence() const
+ { return ContextGroupIdentificationSequence; }
+
/** get ContributingEquipmentSequence (0018,a001)
* @return reference to sequence element
*/
const DRTDeidentificationMethodCodeSequence &getDeidentificationMethodCodeSequence() const
{ return DeidentificationMethodCodeSequence; }
+ /** get DerivationCodeSequence (0008,9215)
+ * @return reference to sequence element
+ */
+ DRTDerivationCodeSequence &getDerivationCodeSequence()
+ { return DerivationCodeSequence; }
+
+ /** get DerivationCodeSequence (0008,9215)
+ * @return const reference to sequence element
+ */
+ const DRTDerivationCodeSequence &getDerivationCodeSequence() const
+ { return DerivationCodeSequence; }
+
/** get DigitalSignaturesSequence (fffa,fffa)
* @return reference to sequence element
*/
const DRTEncryptedAttributesSequence &getEncryptedAttributesSequence() const
{ return EncryptedAttributesSequence; }
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return reference to sequence element
+ */
+ DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence()
+ { return GroupOfPatientsIdentificationSequence; }
+
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return const reference to sequence element
+ */
+ const DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence() const
+ { return GroupOfPatientsIdentificationSequence; }
+
/** get HL7StructuredDocumentReferenceSequence (0040,a390)
* @return reference to sequence element
*/
const DRTMACParametersSequence &getMACParametersSequence() const
{ return MACParametersSequence; }
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return reference to sequence element
+ */
+ DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence()
+ { return MappingResourceIdentificationSequence; }
+
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return const reference to sequence element
+ */
+ const DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence() const
+ { return MappingResourceIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
/** get OriginalAttributesSequence (0400,0561)
* @return reference to sequence element
*/
const DRTReferencedFrameOfReferenceSequence &getReferencedFrameOfReferenceSequence() const
{ return ReferencedFrameOfReferenceSequence; }
+ /** get ReferencedImageSequence (0008,1140)
+ * @return reference to sequence element
+ */
+ DRTReferencedImageSequence &getReferencedImageSequence()
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedImageSequence (0008,1140)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedImageSequence &getReferencedImageSequence() const
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return reference to sequence element
+ */
+ DRTReferencedInstanceSequence &getReferencedInstanceSequence()
+ { return ReferencedInstanceSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedInstanceSequence &getReferencedInstanceSequence() const
+ { return ReferencedInstanceSequence; }
+
/** get ReferencedPatientPhotoSequence (0010,1100)
* @return reference to sequence element
*/
const DRTSeriesDescriptionCodeSequence &getSeriesDescriptionCodeSequence() const
{ return SeriesDescriptionCodeSequence; }
+ /** get SourceImageSequence (0008,2112)
+ * @return reference to sequence element
+ */
+ DRTSourceImageSequence &getSourceImageSequence()
+ { return SourceImageSequence; }
+
+ /** get SourceImageSequence (0008,2112)
+ * @return const reference to sequence element
+ */
+ const DRTSourceImageSequence &getSourceImageSequence() const
+ { return SourceImageSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return reference to sequence element
+ */
+ DRTSourceInstanceSequence &getSourceInstanceSequence()
+ { return SourceInstanceSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return const reference to sequence element
+ */
+ const DRTSourceInstanceSequence &getSourceInstanceSequence() const
+ { return SourceInstanceSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return reference to sequence element
+ */
+ DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence()
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return const reference to sequence element
+ */
+ const DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence() const
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return reference to sequence element
+ */
+ DRTStrainCodeSequence &getStrainCodeSequence()
+ { return StrainCodeSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return const reference to sequence element
+ */
+ const DRTStrainCodeSequence &getStrainCodeSequence() const
+ { return StrainCodeSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return reference to sequence element
+ */
+ DRTStrainStockSequence &getStrainStockSequence()
+ { return StrainStockSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return const reference to sequence element
+ */
+ const DRTStrainStockSequence &getStrainStockSequence() const
+ { return StrainStockSequence; }
+
/** get StructureSetROISequence (3006,0020)
* @return reference to sequence element
*/
const DRTStudiesContainingOtherReferencedInstancesSequence &getStudiesContainingOtherReferencedInstancesSequence() const
{ return StudiesContainingOtherReferencedInstancesSequence; }
+ /** get UDISequence (0018,100a)
+ * @return reference to sequence element
+ */
+ DRTUDISequence &getUDISequence()
+ { return UDISequence; }
+
+ /** get UDISequence (0018,100a)
+ * @return const reference to sequence element
+ */
+ const DRTUDISequence &getUDISequence() const
+ { return UDISequence; }
+
// --- set DICOM attribute values ---
/** set AccessionNumber (0008,0050)
*/
virtual OFCondition setAdmittingDiagnosesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set Allergies (0010,2110)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setAllergies(const OFString &value, const OFBool check = OFTrue);
+
/** set ApprovalStatus (300e,0002)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setDeidentificationMethod(const OFString &value, const OFBool check = OFTrue);
+ /** set DerivationDescription (0008,2111)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDerivationDescription(const OFString &value, const OFBool check = OFTrue);
+
/** set DeviceSerialNumber (0018,1000)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setIssuerOfPatientID(const OFString &value, const OFBool check = OFTrue);
+ /** set LastMenstrualDate (0010,21d0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLastMenstrualDate(const OFString &value, const OFBool check = OFTrue);
+
/** set LongitudinalTemporalInformationModified (0028,0303)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set MeasuredAPDimension (0010,1023)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredAPDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MeasuredLateralDimension (0010,1024)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredLateralDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MedicalAlerts (0010,2000)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMedicalAlerts(const OFString &value, const OFBool check = OFTrue);
+
/** set Modality (0008,0060)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setPatientAge(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientAlternativeCalendar (0010,0035)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthDate (0010,0030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthDate(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthTime (0010,0032)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (TM) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthTime(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBodyMassIndex (0010,1022)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBodyMassIndex(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBreedDescription (0010,2292)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientComments(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientID (0010,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientSpeciesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientState (0038,0500)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientState(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientWeight (0010,1030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
virtual OFCondition setPositionReferenceIndicator(const OFString &value, const OFBool check = OFTrue);
+ /** set PregnancyStatus (0010,21c0)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPregnancyStatus(const Uint16 value, const unsigned long pos = 0);
+
/** set QualityControlSubject (0010,0200)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setServiceEpisodeID(const OFString &value, const OFBool check = OFTrue);
+ /** set SmokingStatus (0010,21a0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSmokingStatus(const OFString &value, const OFBool check = OFTrue);
+
/** set SoftwareVersions (0018,1020)
* @param value value to be set (possibly multi-valued) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
*/
virtual OFCondition setStationName(const OFString &value, const OFBool check = OFTrue);
+ /** set StrainAdditionalInformation (0010,0218)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainAdditionalInformation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainDescription (0010,0212)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainNomenclature (0010,0213)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainNomenclature(const OFString &value, const OFBool check = OFTrue);
+
/** set StructureSetDate (3006,0008)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
/// PatientBirthDate (0010,0030) vr=DA, vm=1, type=2
DcmDate PatientBirthDate;
+ /// PatientBirthDateInAlternativeCalendar (0010,0033) vr=LO, vm=1, type=3
+ DcmLongString PatientBirthDateInAlternativeCalendar;
+ /// PatientDeathDateInAlternativeCalendar (0010,0034) vr=LO, vm=1, type=3
+ DcmLongString PatientDeathDateInAlternativeCalendar;
+ /// PatientAlternativeCalendar (0010,0035) vr=CS, vm=1, type=1C
+ DcmCodeString PatientAlternativeCalendar;
/// PatientSex (0010,0040) vr=CS, vm=1, type=2
DcmCodeString PatientSex;
/// ReferencedPatientPhotoSequence (0010,1100) vr=SQ, vm=1, type=3
DRTPatientBreedCodeSequence PatientBreedCodeSequence;
/// BreedRegistrationSequence (0010,2294) vr=SQ, vm=1, type=2C
DRTBreedRegistrationSequence BreedRegistrationSequence;
+ /// StrainDescription (0010,0212) vr=UC, vm=1, type=3
+ DcmUnlimitedCharacters StrainDescription;
+ /// StrainNomenclature (0010,0213) vr=LO, vm=1, type=3
+ DcmLongString StrainNomenclature;
+ /// StrainCodeSequence (0010,0219) vr=SQ, vm=1, type=3
+ DRTStrainCodeSequence StrainCodeSequence;
+ /// StrainAdditionalInformation (0010,0218) vr=UT, vm=1, type=3
+ DcmUnlimitedText StrainAdditionalInformation;
+ /// StrainStockSequence (0010,0216) vr=SQ, vm=1, type=3
+ DRTStrainStockSequence StrainStockSequence;
/// ResponsiblePerson (0010,2297) vr=PN, vm=1, type=2C
DcmPersonName ResponsiblePerson;
/// ResponsiblePersonRole (0010,2298) vr=CS, vm=1, type=1C
DcmLongString DeidentificationMethod;
/// DeidentificationMethodCodeSequence (0012,0064) vr=SQ, vm=1, type=1C
DRTDeidentificationMethodCodeSequence DeidentificationMethodCodeSequence;
+ /// SourcePatientGroupIdentificationSequence (0010,0026) vr=SQ, vm=1, type=3
+ DRTSourcePatientGroupIdentificationSequence SourcePatientGroupIdentificationSequence;
+ /// GroupOfPatientsIdentificationSequence (0010,0027) vr=SQ, vm=1, type=3
+ DRTGroupOfPatientsIdentificationSequence GroupOfPatientsIdentificationSequence;
// --- ClinicalTrialSubjectModule (U) ---
DcmDecimalString PatientSize;
/// PatientWeight (0010,1030) vr=DS, vm=1, type=3
DcmDecimalString PatientWeight;
+ /// PatientBodyMassIndex (0010,1022) vr=DS, vm=1, type=3
+ DcmDecimalString PatientBodyMassIndex;
+ /// MeasuredAPDimension (0010,1023) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredAPDimension;
+ /// MeasuredLateralDimension (0010,1024) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredLateralDimension;
/// PatientSizeCodeSequence (0010,1021) vr=SQ, vm=1, type=3
DRTPatientSizeCodeSequence PatientSizeCodeSequence;
+ /// MedicalAlerts (0010,2000) vr=LO, vm=1-n, type=3
+ DcmLongString MedicalAlerts;
+ /// Allergies (0010,2110) vr=LO, vm=1-n, type=3
+ DcmLongString Allergies;
+ /// SmokingStatus (0010,21a0) vr=CS, vm=1, type=3
+ DcmCodeString SmokingStatus;
+ /// PregnancyStatus (0010,21c0) vr=US, vm=1, type=3
+ DcmUnsignedShort PregnancyStatus;
+ /// LastMenstrualDate (0010,21d0) vr=DA, vm=1, type=3
+ DcmDate LastMenstrualDate;
+ /// PatientState (0038,0500) vr=LO, vm=1, type=3
+ DcmLongString PatientState;
/// Occupation (0010,2180) vr=SH, vm=1, type=3
DcmShortString Occupation;
/// AdditionalPatientHistory (0010,21b0) vr=LT, vm=1, type=3
DRTSeriesDescriptionCodeSequence SeriesDescriptionCodeSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// ReferencedPerformedProcedureStepSequence (0008,1111) vr=SQ, vm=1, type=3
DRTReferencedPerformedProcedureStepSequence ReferencedPerformedProcedureStepSequence;
/// RequestAttributesSequence (0040,0275) vr=SQ, vm=1, type=3
DcmLongString SoftwareVersions;
/// GantryID (0018,1008) vr=LO, vm=1, type=3
DcmLongString GantryID;
+ /// UDISequence (0018,100a) vr=SQ, vm=1, type=3
+ DRTUDISequence UDISequence;
/// SpatialResolution (0018,1050) vr=DS, vm=1, type=3
DcmDecimalString SpatialResolution;
/// DateOfLastCalibration (0018,1200) vr=DA, vm=1-n, type=3
/// ReviewerName (300e,0008) vr=PN, vm=1, type=2C
DcmPersonName ReviewerName;
+ // --- GeneralReferenceModule (U) ---
+
+ /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
+ DRTReferencedImageSequence ReferencedImageSequence;
+ /// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
+ DRTReferencedInstanceSequence ReferencedInstanceSequence;
+ /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
+ DcmShortText DerivationDescription;
+ /// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
+ DRTDerivationCodeSequence DerivationCodeSequence;
+ /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
+ DRTSourceImageSequence SourceImageSequence;
+ /// SourceInstanceSequence (0042,0013) vr=SQ, vm=1, type=3
+ DRTSourceInstanceSequence SourceInstanceSequence;
+
// --- SOPCommonModule (M) ---
/// SOPClassUID (0008,0016) vr=UI, vm=1, type=1
DcmUniqueIdentifier OriginalSpecializedSOPClassUID;
/// CodingSchemeIdentificationSequence (0008,0110) vr=SQ, vm=1, type=3
DRTCodingSchemeIdentificationSequence CodingSchemeIdentificationSequence;
+ /// ContextGroupIdentificationSequence (0008,0123) vr=SQ, vm=1, type=3
+ DRTContextGroupIdentificationSequence ContextGroupIdentificationSequence;
+ /// MappingResourceIdentificationSequence (0008,0124) vr=SQ, vm=1, type=3
+ DRTMappingResourceIdentificationSequence MappingResourceIdentificationSequence;
/// TimezoneOffsetFromUTC (0008,0201) vr=SH, vm=1, type=3
DcmShortString TimezoneOffsetFromUTC;
/// ContributingEquipmentSequence (0018,a001) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTTreatmentSummaryRecordIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/seq/drtcsis.h" // for CodingSchemeIdentificationSequence
#include "dcmtk/dcmrt/seq/drtcctus.h" // for ConsentForClinicalTrialUseSequence
#include "dcmtk/dcmrt/seq/drtcpis.h" // for ConsultingPhysicianIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtcgis.h" // for ContextGroupIdentificationSequence
#include "dcmtk/dcmrt/seq/drtces.h" // for ContributingEquipmentSequence
#include "dcmtk/dcmrt/seq/drtcsas.h" // for ConversionSourceAttributesSequence
#include "dcmtk/dcmrt/seq/drtdimcs.h" // for DeidentificationMethodCodeSequence
+#include "dcmtk/dcmrt/seq/drtdcs.h" // for DerivationCodeSequence
#include "dcmtk/dcmrt/seq/drtdss.h" // for DigitalSignaturesSequence
#include "dcmtk/dcmrt/seq/drteas.h" // for EncryptedAttributesSequence
#include "dcmtk/dcmrt/seq/drtfgss.h" // for FractionGroupSummarySequence
+#include "dcmtk/dcmrt/seq/drtgpis.h" // for GroupOfPatientsIdentificationSequence
#include "dcmtk/dcmrt/seq/drthsdrs.h" // for HL7StructuredDocumentReferenceSequence
#include "dcmtk/dcmrt/seq/drtians.h" // for IssuerOfAccessionNumberSequence
#include "dcmtk/dcmrt/seq/drtiais.h" // for IssuerOfAdmissionIDSequence
#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
#include "dcmtk/dcmrt/seq/drtiseis.h" // for IssuerOfServiceEpisodeIDSequence
#include "dcmtk/dcmrt/seq/drtmps.h" // for MACParametersSequence
+#include "dcmtk/dcmrt/seq/drtmris.h" // for MappingResourceIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
#include "dcmtk/dcmrt/seq/drtoas.h" // for OriginalAttributesSequence
#include "dcmtk/dcmrt/seq/drtopis.h" // for OtherPatientIDsSequence
#include "dcmtk/dcmrt/seq/drtpbcs.h" // for PatientBreedCodeSequence
#include "dcmtk/dcmrt/seq/drtpdecs.h" // for PrivateDataElementCharacteristicsSequence
#include "dcmtk/dcmrt/seq/drtpcs.h" // for ProcedureCodeSequence
#include "dcmtk/dcmrt/seq/drtrppcs.h" // for ReasonForPerformedProcedureCodeSequence
+#include "dcmtk/dcmrt/seq/drtrims.h" // for ReferencedImageSequence
+#include "dcmtk/dcmrt/seq/drtris.h" // for ReferencedInstanceSequence
#include "dcmtk/dcmrt/seq/drtrpphs.h" // for ReferencedPatientPhotoSequence
#include "dcmtk/dcmrt/seq/drtrps.h" // for ReferencedPatientSequence
#include "dcmtk/dcmrt/seq/drtrppss.h" // for ReferencedPerformedProcedureStepSequence
#include "dcmtk/dcmrt/seq/drtras.h" // for RequestAttributesSequence
#include "dcmtk/dcmrt/seq/drtrscs.h" // for RequestingServiceCodeSequence
#include "dcmtk/dcmrt/seq/drtsdcs.h" // for SeriesDescriptionCodeSequence
+#include "dcmtk/dcmrt/seq/drtsis.h" // for SourceImageSequence
+#include "dcmtk/dcmrt/seq/drtsins.h" // for SourceInstanceSequence
+#include "dcmtk/dcmrt/seq/drtspgis.h" // for SourcePatientGroupIdentificationSequence
+#include "dcmtk/dcmrt/seq/drtscs.h" // for StrainCodeSequence
+#include "dcmtk/dcmrt/seq/drtsss.h" // for StrainStockSequence
#include "dcmtk/dcmrt/seq/drtscris.h" // for StudiesContainingOtherReferencedInstancesSequence
#include "dcmtk/dcmrt/seq/drttscds.h" // for TreatmentSummaryCalculatedDoseReferenceSequence
#include "dcmtk/dcmrt/seq/drttsmds.h" // for TreatmentSummaryMeasuredDoseReferenceSequence
+#include "dcmtk/dcmrt/seq/drtudis.h" // for UDISequence
/** Interface class for RTTreatmentSummaryRecordIOD
*/
virtual OFBool isClinicalTrialSeriesModulePresent(const OFBool complete = OFFalse);
+ /** check whether GeneralReferenceModule (U) is present.
+ * By default, a module is reported as being present if at least one attribute
+ * from this module has a non-empty value.
+ * @param complete check for all mandatory attributes of this module if enabled
+ * @return OFTrue if module is present, OFFalse otherwise
+ */
+ virtual OFBool isGeneralReferenceModulePresent(const OFBool complete = OFFalse);
+
/** check whether CommonInstanceReferenceModule (U) is present.
* By default, a module is reported as being present if at least one attribute
* from this module has a non-empty value.
*/
virtual OFCondition getAdmittingDiagnosesDescription(OFString &value, const signed long pos = 0) const;
+ /** get Allergies (0010,2110)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getAllergies(OFString &value, const signed long pos = 0) const;
+
/** get AuthorizationEquipmentCertificationNumber (0100,0426)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getDeidentificationMethod(OFString &value, const signed long pos = 0) const;
+ /** get DerivationDescription (0008,2111)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getDerivationDescription(OFString &value, const signed long pos = 0) const;
+
/** get DeviceSerialNumber (0018,1000)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getIssuerOfPatientID(OFString &value, const signed long pos = 0) const;
+ /** get LastMenstrualDate (0010,21d0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getLastMenstrualDate(OFString &value, const signed long pos = 0) const;
+
/** get LongitudinalTemporalInformationModified (0028,0303)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredAPDimension (0010,1023)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredAPDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(OFString &value, const signed long pos = 0) const;
+
+ /** get MeasuredLateralDimension (0010,1024)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMeasuredLateralDimension(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get MedicalAlerts (0010,2000)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getMedicalAlerts(OFString &value, const signed long pos = 0) const;
+
/** get Modality (0008,0060)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientAge(OFString &value, const signed long pos = 0) const;
+ /** get PatientAlternativeCalendar (0010,0035)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthDate (0010,0030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthDate(OFString &value, const signed long pos = 0) const;
+ /** get PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientBirthTime (0010,0032)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientBirthTime(OFString &value, const signed long pos = 0) const;
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientBodyMassIndex (0010,1022)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientBodyMassIndex(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientBreedDescription (0010,2292)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientComments(OFString &value, const signed long pos = 0) const;
+ /** get PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos = 0) const;
+
/** get PatientID (0010,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPatientSpeciesDescription(OFString &value, const signed long pos = 0) const;
+ /** get PatientState (0038,0500)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPatientState(OFString &value, const signed long pos = 0) const;
+
/** get PatientWeight (0010,1030)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getPixelPaddingValue(Uint16 &value, const unsigned long pos = 0) const;
+ /** get PregnancyStatus (0010,21c0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getPregnancyStatus(Uint16 &value, const unsigned long pos = 0) const;
+
/** get QualityControlSubject (0010,0200)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getServiceEpisodeID(OFString &value, const signed long pos = 0) const;
+ /** get SmokingStatus (0010,21a0)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getSmokingStatus(OFString &value, const signed long pos = 0) const;
+
/** get SoftwareVersions (0018,1020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
virtual OFCondition getStationName(OFString &value, const signed long pos = 0) const;
+ /** get StrainAdditionalInformation (0010,0218)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainAdditionalInformation(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainDescription (0010,0212)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainNomenclature (0010,0213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition getStrainNomenclature(OFString &value, const signed long pos = 0) const;
+
/** get StudyDate (0008,0020)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTConsultingPhysicianIdentificationSequence &getConsultingPhysicianIdentificationSequence() const
{ return ConsultingPhysicianIdentificationSequence; }
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return reference to sequence element
+ */
+ DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence()
+ { return ContextGroupIdentificationSequence; }
+
+ /** get ContextGroupIdentificationSequence (0008,0123)
+ * @return const reference to sequence element
+ */
+ const DRTContextGroupIdentificationSequence &getContextGroupIdentificationSequence() const
+ { return ContextGroupIdentificationSequence; }
+
/** get ContributingEquipmentSequence (0018,a001)
* @return reference to sequence element
*/
const DRTDeidentificationMethodCodeSequence &getDeidentificationMethodCodeSequence() const
{ return DeidentificationMethodCodeSequence; }
+ /** get DerivationCodeSequence (0008,9215)
+ * @return reference to sequence element
+ */
+ DRTDerivationCodeSequence &getDerivationCodeSequence()
+ { return DerivationCodeSequence; }
+
+ /** get DerivationCodeSequence (0008,9215)
+ * @return const reference to sequence element
+ */
+ const DRTDerivationCodeSequence &getDerivationCodeSequence() const
+ { return DerivationCodeSequence; }
+
/** get DigitalSignaturesSequence (fffa,fffa)
* @return reference to sequence element
*/
const DRTFractionGroupSummarySequence &getFractionGroupSummarySequence() const
{ return FractionGroupSummarySequence; }
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return reference to sequence element
+ */
+ DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence()
+ { return GroupOfPatientsIdentificationSequence; }
+
+ /** get GroupOfPatientsIdentificationSequence (0010,0027)
+ * @return const reference to sequence element
+ */
+ const DRTGroupOfPatientsIdentificationSequence &getGroupOfPatientsIdentificationSequence() const
+ { return GroupOfPatientsIdentificationSequence; }
+
/** get HL7StructuredDocumentReferenceSequence (0040,a390)
* @return reference to sequence element
*/
const DRTMACParametersSequence &getMACParametersSequence() const
{ return MACParametersSequence; }
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return reference to sequence element
+ */
+ DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence()
+ { return MappingResourceIdentificationSequence; }
+
+ /** get MappingResourceIdentificationSequence (0008,0124)
+ * @return const reference to sequence element
+ */
+ const DRTMappingResourceIdentificationSequence &getMappingResourceIdentificationSequence() const
+ { return MappingResourceIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
/** get OriginalAttributesSequence (0400,0561)
* @return reference to sequence element
*/
const DRTReasonForPerformedProcedureCodeSequence &getReasonForPerformedProcedureCodeSequence() const
{ return ReasonForPerformedProcedureCodeSequence; }
+ /** get ReferencedImageSequence (0008,1140)
+ * @return reference to sequence element
+ */
+ DRTReferencedImageSequence &getReferencedImageSequence()
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedImageSequence (0008,1140)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedImageSequence &getReferencedImageSequence() const
+ { return ReferencedImageSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return reference to sequence element
+ */
+ DRTReferencedInstanceSequence &getReferencedInstanceSequence()
+ { return ReferencedInstanceSequence; }
+
+ /** get ReferencedInstanceSequence (0008,114a)
+ * @return const reference to sequence element
+ */
+ const DRTReferencedInstanceSequence &getReferencedInstanceSequence() const
+ { return ReferencedInstanceSequence; }
+
/** get ReferencedPatientPhotoSequence (0010,1100)
* @return reference to sequence element
*/
const DRTSeriesDescriptionCodeSequence &getSeriesDescriptionCodeSequence() const
{ return SeriesDescriptionCodeSequence; }
+ /** get SourceImageSequence (0008,2112)
+ * @return reference to sequence element
+ */
+ DRTSourceImageSequence &getSourceImageSequence()
+ { return SourceImageSequence; }
+
+ /** get SourceImageSequence (0008,2112)
+ * @return const reference to sequence element
+ */
+ const DRTSourceImageSequence &getSourceImageSequence() const
+ { return SourceImageSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return reference to sequence element
+ */
+ DRTSourceInstanceSequence &getSourceInstanceSequence()
+ { return SourceInstanceSequence; }
+
+ /** get SourceInstanceSequence (0042,0013)
+ * @return const reference to sequence element
+ */
+ const DRTSourceInstanceSequence &getSourceInstanceSequence() const
+ { return SourceInstanceSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return reference to sequence element
+ */
+ DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence()
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get SourcePatientGroupIdentificationSequence (0010,0026)
+ * @return const reference to sequence element
+ */
+ const DRTSourcePatientGroupIdentificationSequence &getSourcePatientGroupIdentificationSequence() const
+ { return SourcePatientGroupIdentificationSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return reference to sequence element
+ */
+ DRTStrainCodeSequence &getStrainCodeSequence()
+ { return StrainCodeSequence; }
+
+ /** get StrainCodeSequence (0010,0219)
+ * @return const reference to sequence element
+ */
+ const DRTStrainCodeSequence &getStrainCodeSequence() const
+ { return StrainCodeSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return reference to sequence element
+ */
+ DRTStrainStockSequence &getStrainStockSequence()
+ { return StrainStockSequence; }
+
+ /** get StrainStockSequence (0010,0216)
+ * @return const reference to sequence element
+ */
+ const DRTStrainStockSequence &getStrainStockSequence() const
+ { return StrainStockSequence; }
+
/** get StudiesContainingOtherReferencedInstancesSequence (0008,1200)
* @return reference to sequence element
*/
const DRTTreatmentSummaryMeasuredDoseReferenceSequence &getTreatmentSummaryMeasuredDoseReferenceSequence() const
{ return TreatmentSummaryMeasuredDoseReferenceSequence; }
+ /** get UDISequence (0018,100a)
+ * @return reference to sequence element
+ */
+ DRTUDISequence &getUDISequence()
+ { return UDISequence; }
+
+ /** get UDISequence (0018,100a)
+ * @return const reference to sequence element
+ */
+ const DRTUDISequence &getUDISequence() const
+ { return UDISequence; }
+
// --- set DICOM attribute values ---
/** set AccessionNumber (0008,0050)
*/
virtual OFCondition setAdmittingDiagnosesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set Allergies (0010,2110)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setAllergies(const OFString &value, const OFBool check = OFTrue);
+
/** set AuthorizationEquipmentCertificationNumber (0100,0426)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setDeidentificationMethod(const OFString &value, const OFBool check = OFTrue);
+ /** set DerivationDescription (0008,2111)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (ST) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setDerivationDescription(const OFString &value, const OFBool check = OFTrue);
+
/** set DeviceSerialNumber (0018,1000)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setIssuerOfPatientID(const OFString &value, const OFBool check = OFTrue);
+ /** set LastMenstrualDate (0010,21d0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setLastMenstrualDate(const OFString &value, const OFBool check = OFTrue);
+
/** set LongitudinalTemporalInformationModified (0028,0303)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set MeasuredAPDimension (0010,1023)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredAPDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MeasuredLateralDimension (0010,1024)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMeasuredLateralDimension(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MedicalAlerts (0010,2000)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setMedicalAlerts(const OFString &value, const OFBool check = OFTrue);
+
/** set Modality (0008,0060)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setPatientAge(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientAlternativeCalendar (0010,0035)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthDate (0010,0030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthDate(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBirthDateInAlternativeCalendar (0010,0033)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBirthTime (0010,0032)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (TM) and VM (1) if enabled
*/
virtual OFCondition setPatientBirthTime(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientBodyMassIndex (0010,1022)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientBodyMassIndex(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientBreedDescription (0010,2292)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientComments(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientDeathDateInAlternativeCalendar (0010,0034)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientID (0010,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
*/
virtual OFCondition setPatientSpeciesDescription(const OFString &value, const OFBool check = OFTrue);
+ /** set PatientState (0038,0500)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPatientState(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientWeight (0010,1030)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
virtual OFCondition setPixelPaddingValue(const Uint16 value, const unsigned long pos = 0);
+ /** set PregnancyStatus (0010,21c0)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setPregnancyStatus(const Uint16 value, const unsigned long pos = 0);
+
/** set QualityControlSubject (0010,0200)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
*/
virtual OFCondition setServiceEpisodeID(const OFString &value, const OFBool check = OFTrue);
+ /** set SmokingStatus (0010,21a0)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setSmokingStatus(const OFString &value, const OFBool check = OFTrue);
+
/** set SoftwareVersions (0018,1020)
* @param value value to be set (possibly multi-valued) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1-n) if enabled
*/
virtual OFCondition setStationName(const OFString &value, const OFBool check = OFTrue);
+ /** set StrainAdditionalInformation (0010,0218)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainAdditionalInformation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainDescription (0010,0212)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainNomenclature (0010,0213)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ virtual OFCondition setStrainNomenclature(const OFString &value, const OFBool check = OFTrue);
+
/** set StudyDate (0008,0020)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DA) and VM (1) if enabled
DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
/// PatientBirthDate (0010,0030) vr=DA, vm=1, type=2
DcmDate PatientBirthDate;
+ /// PatientBirthDateInAlternativeCalendar (0010,0033) vr=LO, vm=1, type=3
+ DcmLongString PatientBirthDateInAlternativeCalendar;
+ /// PatientDeathDateInAlternativeCalendar (0010,0034) vr=LO, vm=1, type=3
+ DcmLongString PatientDeathDateInAlternativeCalendar;
+ /// PatientAlternativeCalendar (0010,0035) vr=CS, vm=1, type=1C
+ DcmCodeString PatientAlternativeCalendar;
/// PatientSex (0010,0040) vr=CS, vm=1, type=2
DcmCodeString PatientSex;
/// ReferencedPatientPhotoSequence (0010,1100) vr=SQ, vm=1, type=3
DRTPatientBreedCodeSequence PatientBreedCodeSequence;
/// BreedRegistrationSequence (0010,2294) vr=SQ, vm=1, type=2C
DRTBreedRegistrationSequence BreedRegistrationSequence;
+ /// StrainDescription (0010,0212) vr=UC, vm=1, type=3
+ DcmUnlimitedCharacters StrainDescription;
+ /// StrainNomenclature (0010,0213) vr=LO, vm=1, type=3
+ DcmLongString StrainNomenclature;
+ /// StrainCodeSequence (0010,0219) vr=SQ, vm=1, type=3
+ DRTStrainCodeSequence StrainCodeSequence;
+ /// StrainAdditionalInformation (0010,0218) vr=UT, vm=1, type=3
+ DcmUnlimitedText StrainAdditionalInformation;
+ /// StrainStockSequence (0010,0216) vr=SQ, vm=1, type=3
+ DRTStrainStockSequence StrainStockSequence;
/// ResponsiblePerson (0010,2297) vr=PN, vm=1, type=2C
DcmPersonName ResponsiblePerson;
/// ResponsiblePersonRole (0010,2298) vr=CS, vm=1, type=1C
DcmLongString DeidentificationMethod;
/// DeidentificationMethodCodeSequence (0012,0064) vr=SQ, vm=1, type=1C
DRTDeidentificationMethodCodeSequence DeidentificationMethodCodeSequence;
+ /// SourcePatientGroupIdentificationSequence (0010,0026) vr=SQ, vm=1, type=3
+ DRTSourcePatientGroupIdentificationSequence SourcePatientGroupIdentificationSequence;
+ /// GroupOfPatientsIdentificationSequence (0010,0027) vr=SQ, vm=1, type=3
+ DRTGroupOfPatientsIdentificationSequence GroupOfPatientsIdentificationSequence;
// --- ClinicalTrialSubjectModule (U) ---
DcmDecimalString PatientSize;
/// PatientWeight (0010,1030) vr=DS, vm=1, type=3
DcmDecimalString PatientWeight;
+ /// PatientBodyMassIndex (0010,1022) vr=DS, vm=1, type=3
+ DcmDecimalString PatientBodyMassIndex;
+ /// MeasuredAPDimension (0010,1023) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredAPDimension;
+ /// MeasuredLateralDimension (0010,1024) vr=DS, vm=1, type=3
+ DcmDecimalString MeasuredLateralDimension;
/// PatientSizeCodeSequence (0010,1021) vr=SQ, vm=1, type=3
DRTPatientSizeCodeSequence PatientSizeCodeSequence;
+ /// MedicalAlerts (0010,2000) vr=LO, vm=1-n, type=3
+ DcmLongString MedicalAlerts;
+ /// Allergies (0010,2110) vr=LO, vm=1-n, type=3
+ DcmLongString Allergies;
+ /// SmokingStatus (0010,21a0) vr=CS, vm=1, type=3
+ DcmCodeString SmokingStatus;
+ /// PregnancyStatus (0010,21c0) vr=US, vm=1, type=3
+ DcmUnsignedShort PregnancyStatus;
+ /// LastMenstrualDate (0010,21d0) vr=DA, vm=1, type=3
+ DcmDate LastMenstrualDate;
+ /// PatientState (0038,0500) vr=LO, vm=1, type=3
+ DcmLongString PatientState;
/// Occupation (0010,2180) vr=SH, vm=1, type=3
DcmShortString Occupation;
/// AdditionalPatientHistory (0010,21b0) vr=LT, vm=1, type=3
DRTSeriesDescriptionCodeSequence SeriesDescriptionCodeSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// ReferencedPerformedProcedureStepSequence (0008,1111) vr=SQ, vm=1, type=3
DRTReferencedPerformedProcedureStepSequence ReferencedPerformedProcedureStepSequence;
/// RequestAttributesSequence (0040,0275) vr=SQ, vm=1, type=3
DcmLongString SoftwareVersions;
/// GantryID (0018,1008) vr=LO, vm=1, type=3
DcmLongString GantryID;
+ /// UDISequence (0018,100a) vr=SQ, vm=1, type=3
+ DRTUDISequence UDISequence;
/// SpatialResolution (0018,1050) vr=DS, vm=1, type=3
DcmDecimalString SpatialResolution;
/// DateOfLastCalibration (0018,1200) vr=DA, vm=1-n, type=3
/// TreatmentSummaryCalculatedDoseReferenceSequence (3008,0050) vr=SQ, vm=1, type=3
DRTTreatmentSummaryCalculatedDoseReferenceSequence TreatmentSummaryCalculatedDoseReferenceSequence;
+ // --- GeneralReferenceModule (U) ---
+
+ /// ReferencedImageSequence (0008,1140) vr=SQ, vm=1, type=3
+ DRTReferencedImageSequence ReferencedImageSequence;
+ /// ReferencedInstanceSequence (0008,114a) vr=SQ, vm=1, type=3
+ DRTReferencedInstanceSequence ReferencedInstanceSequence;
+ /// DerivationDescription (0008,2111) vr=ST, vm=1, type=3
+ DcmShortText DerivationDescription;
+ /// DerivationCodeSequence (0008,9215) vr=SQ, vm=1, type=3
+ DRTDerivationCodeSequence DerivationCodeSequence;
+ /// SourceImageSequence (0008,2112) vr=SQ, vm=1, type=3
+ DRTSourceImageSequence SourceImageSequence;
+ /// SourceInstanceSequence (0042,0013) vr=SQ, vm=1, type=3
+ DRTSourceInstanceSequence SourceInstanceSequence;
+
// --- SOPCommonModule (M) ---
/// SOPClassUID (0008,0016) vr=UI, vm=1, type=1
DcmUniqueIdentifier OriginalSpecializedSOPClassUID;
/// CodingSchemeIdentificationSequence (0008,0110) vr=SQ, vm=1, type=3
DRTCodingSchemeIdentificationSequence CodingSchemeIdentificationSequence;
+ /// ContextGroupIdentificationSequence (0008,0123) vr=SQ, vm=1, type=3
+ DRTContextGroupIdentificationSequence ContextGroupIdentificationSequence;
+ /// MappingResourceIdentificationSequence (0008,0124) vr=SQ, vm=1, type=3
+ DRTMappingResourceIdentificationSequence MappingResourceIdentificationSequence;
/// TimezoneOffsetFromUTC (0008,0201) vr=SH, vm=1, type=3
DcmShortString TimezoneOffsetFromUTC;
/// ContributingEquipmentSequence (0018,a001) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTAssigningAgencyOrDepartmentCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTAdmittingDiagnosesCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTAdditionalDrugSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTAssigningFacilitySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTApplicatorGeometrySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTAssigningJurisdictionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
+++ /dev/null
-/*
- *
- * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
- * All rights reserved. See COPYRIGHT file for details.
- *
- * Header file for class DRTAdditionalRTROIIdentificationCodeSequence
- *
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
- *
- */
-
-
-#ifndef DRTARICS_H
-#define DRTARICS_H
-
-#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
-
-#include "dcmtk/ofstd/oflist.h" // for standard list class
-#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
-#include "dcmtk/dcmrt/seq/drtecs.h" // for EquivalentCodeSequence
-#include "dcmtk/dcmrt/seq/drtporcs.h" // for PurposeOfReferenceCodeSequence
-
-
-/** Interface class for AdditionalRTROIIdentificationCodeSequence (3006,00b9)
- */
-class DCMTK_DCMRT_EXPORT DRTAdditionalRTROIIdentificationCodeSequence
- : protected DRTTypes
-{
-
- public:
-
- /** Item class
- */
- class DCMTK_DCMRT_EXPORT Item
- : protected DRTTypes
- {
-
- public:
-
- // --- constructors, destructor and operators ---
-
- /** (default) constructor
- * @param emptyDefaultItem flag used to mark the empty default item
- */
- Item(const OFBool emptyDefaultItem = OFFalse);
-
- /** copy constructor
- * @param copy item object to be copied
- */
- Item(const Item ©);
-
- /** destructor
- */
- virtual ~Item();
-
- /** assigment operator
- * @param copy item object to be copied
- */
- Item &operator=(const Item ©);
-
- // --- general methods ---
-
- /** clear all internal member variables
- */
- void clear();
-
- /** check if item is empty
- * @return OFTrue if item is empty, OFFalse otherwise
- */
- OFBool isEmpty();
-
- /** check if item is valid, i.e.\ not the empty default item
- * @return OFTrue if item is valid, OFFalse otherwise
- */
- OFBool isValid() const;
-
- // --- input/output methods ---
-
- /** read elements from sequence item
- * @param item reference to DICOM sequence item from which the elements should be read
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition read(DcmItem &item);
-
- /** write elements to sequence item
- * @param item reference to DICOM sequence item to which the elements should be written
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition write(DcmItem &item);
-
- // --- get DICOM attribute values ---
-
- /** get CodeMeaning (0008,0104)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getCodeMeaning(OFString &value, const signed long pos = 0) const;
-
- /** get CodeValue (0008,0100)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getCodeValue(OFString &value, const signed long pos = 0) const;
-
- /** get CodingSchemeDesignator (0008,0102)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getCodingSchemeDesignator(OFString &value, const signed long pos = 0) const;
-
- /** get CodingSchemeVersion (0008,0103)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getCodingSchemeVersion(OFString &value, const signed long pos = 0) const;
-
- /** get ContextGroupExtensionCreatorUID (0008,010d)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getContextGroupExtensionCreatorUID(OFString &value, const signed long pos = 0) const;
-
- /** get ContextGroupExtensionFlag (0008,010b)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getContextGroupExtensionFlag(OFString &value, const signed long pos = 0) const;
-
- /** get ContextGroupLocalVersion (0008,0107)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getContextGroupLocalVersion(OFString &value, const signed long pos = 0) const;
-
- /** get ContextGroupVersion (0008,0106)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getContextGroupVersion(OFString &value, const signed long pos = 0) const;
-
- /** get ContextIdentifier (0008,010f)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getContextIdentifier(OFString &value, const signed long pos = 0) const;
-
- /** get ContextUID (0008,0117)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getContextUID(OFString &value, const signed long pos = 0) const;
-
- /** get LongCodeValue (0008,0119)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getLongCodeValue(OFString &value, const signed long pos = 0) const;
-
- /** get MappingResource (0008,0105)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
-
- /** get MappingResourceUID (0008,0118)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getMappingResourceUID(OFString &value, const signed long pos = 0) const;
-
- /** get URNCodeValue (0008,0120)
- * @param value reference to variable in which the value should be stored
- * @param pos index of the value to get (0..vm-1), -1 for all components
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getURNCodeValue(OFString &value, const signed long pos = 0) const;
-
- // --- get DICOM sequence attributes ---
-
- /** get EquivalentCodeSequence (0008,0121)
- * @return reference to sequence element
- */
- DRTEquivalentCodeSequence &getEquivalentCodeSequence()
- { return EquivalentCodeSequence; }
-
- /** get EquivalentCodeSequence (0008,0121)
- * @return const reference to sequence element
- */
- const DRTEquivalentCodeSequence &getEquivalentCodeSequence() const
- { return EquivalentCodeSequence; }
-
- /** get PurposeOfReferenceCodeSequence (0040,a170)
- * @return reference to sequence element
- */
- DRTPurposeOfReferenceCodeSequence &getPurposeOfReferenceCodeSequence()
- { return PurposeOfReferenceCodeSequence; }
-
- /** get PurposeOfReferenceCodeSequence (0040,a170)
- * @return const reference to sequence element
- */
- const DRTPurposeOfReferenceCodeSequence &getPurposeOfReferenceCodeSequence() const
- { return PurposeOfReferenceCodeSequence; }
-
- // --- set DICOM attribute values ---
-
- /** set CodeMeaning (0008,0104)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setCodeMeaning(const OFString &value, const OFBool check = OFTrue);
-
- /** set CodeValue (0008,0100)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setCodeValue(const OFString &value, const OFBool check = OFTrue);
-
- /** set CodingSchemeDesignator (0008,0102)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setCodingSchemeDesignator(const OFString &value, const OFBool check = OFTrue);
-
- /** set CodingSchemeVersion (0008,0103)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setCodingSchemeVersion(const OFString &value, const OFBool check = OFTrue);
-
- /** set ContextGroupExtensionCreatorUID (0008,010d)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check = OFTrue);
-
- /** set ContextGroupExtensionFlag (0008,010b)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setContextGroupExtensionFlag(const OFString &value, const OFBool check = OFTrue);
-
- /** set ContextGroupLocalVersion (0008,0107)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setContextGroupLocalVersion(const OFString &value, const OFBool check = OFTrue);
-
- /** set ContextGroupVersion (0008,0106)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setContextGroupVersion(const OFString &value, const OFBool check = OFTrue);
-
- /** set ContextIdentifier (0008,010f)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setContextIdentifier(const OFString &value, const OFBool check = OFTrue);
-
- /** set ContextUID (0008,0117)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setContextUID(const OFString &value, const OFBool check = OFTrue);
-
- /** set LongCodeValue (0008,0119)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setLongCodeValue(const OFString &value, const OFBool check = OFTrue);
-
- /** set MappingResource (0008,0105)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
-
- /** set MappingResourceUID (0008,0118)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setMappingResourceUID(const OFString &value, const OFBool check = OFTrue);
-
- /** set URNCodeValue (0008,0120)
- * @param value value to be set (single value only) or "" for no value
- * @param check check 'value' for conformance with VR (UR) and VM (1) if enabled
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition setURNCodeValue(const OFString &value, const OFBool check = OFTrue);
-
- private:
-
- /// internal flag used to mark the empty default item
- /*const*/ OFBool EmptyDefaultItem;
-
- /// CodeMeaning (0008,0104) vr=LO, vm=1, type=1
- DcmLongString CodeMeaning;
- /// CodeValue (0008,0100) vr=SH, vm=1, type=1C
- DcmShortString CodeValue;
- /// CodingSchemeDesignator (0008,0102) vr=SH, vm=1, type=1C
- DcmShortString CodingSchemeDesignator;
- /// CodingSchemeVersion (0008,0103) vr=SH, vm=1, type=1C
- DcmShortString CodingSchemeVersion;
- /// ContextGroupExtensionCreatorUID (0008,010d) vr=UI, vm=1, type=1C
- DcmUniqueIdentifier ContextGroupExtensionCreatorUID;
- /// ContextGroupExtensionFlag (0008,010b) vr=CS, vm=1, type=3
- DcmCodeString ContextGroupExtensionFlag;
- /// ContextGroupLocalVersion (0008,0107) vr=DT, vm=1, type=1C
- DcmDateTime ContextGroupLocalVersion;
- /// ContextGroupVersion (0008,0106) vr=DT, vm=1, type=1C
- DcmDateTime ContextGroupVersion;
- /// ContextIdentifier (0008,010f) vr=CS, vm=1, type=3
- DcmCodeString ContextIdentifier;
- /// ContextUID (0008,0117) vr=UI, vm=1, type=3
- DcmUniqueIdentifier ContextUID;
- /// EquivalentCodeSequence (0008,0121) vr=SQ, vm=1, type=3
- DRTEquivalentCodeSequence EquivalentCodeSequence;
- /// LongCodeValue (0008,0119) vr=UC, vm=1, type=1C
- DcmUnlimitedCharacters LongCodeValue;
- /// MappingResource (0008,0105) vr=CS, vm=1, type=1C
- DcmCodeString MappingResource;
- /// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
- DcmUniqueIdentifier MappingResourceUID;
- /// PurposeOfReferenceCodeSequence (0040,a170) vr=SQ, vm=1, type=1
- DRTPurposeOfReferenceCodeSequence PurposeOfReferenceCodeSequence;
- /// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
- DcmUniversalResourceIdentifierOrLocator URNCodeValue;
-
- };
-
- // --- constructors, destructor and operators ---
-
- /** (default) constructor
- * @param emptyDefaultSequence internal flag used to mark the empty default sequence
- */
- DRTAdditionalRTROIIdentificationCodeSequence(const OFBool emptyDefaultSequence = OFFalse);
-
- /** copy constructor
- * @param copy sequence object to be copied
- */
- DRTAdditionalRTROIIdentificationCodeSequence(const DRTAdditionalRTROIIdentificationCodeSequence ©);
-
- /** destructor
- */
- virtual ~DRTAdditionalRTROIIdentificationCodeSequence();
-
- /** assigment operator
- * @param copy sequence object to be copied
- */
- DRTAdditionalRTROIIdentificationCodeSequence &operator=(const DRTAdditionalRTROIIdentificationCodeSequence ©);
-
- // --- general methods ---
-
- /** clear all internal member variables
- */
- void clear();
-
- /** check if sequence is empty
- * @return OFTrue if sequence is empty, OFFalse otherwise
- */
- OFBool isEmpty();
-
- /** check if sequence is valid, i.e.\ not the empty default sequence
- * @return OFTrue if sequence is valid, OFFalse otherwise
- */
- OFBool isValid() const;
-
- /** get number of items in the sequence
- * @return number of items
- */
- unsigned long getNumberOfItems() const;
-
- /** goto first item in the sequence
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition gotoFirstItem();
-
- /** goto next item in the sequence
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition gotoNextItem();
-
- /** goto particular item in the sequence
- * @param num number of the item to be selected (0..num-1)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition gotoItem(const unsigned long num);
-
- /** get current item in the sequence
- * @param item reference to item pointer (result variable)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getCurrentItem(Item *&item) const;
-
- /** get current item in the sequence
- * @return reference to specified item if successful, empty default item otherwise
- */
- Item &getCurrentItem();
-
- /** get current item in the sequence
- * @return const reference to specified item if successful, empty default item otherwise
- */
- const Item &getCurrentItem() const;
-
- /** get particular item in the sequence
- * @param num number of the item to be retrieved (0..num-1)
- * @param item reference to item pointer (result variable)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition getItem(const unsigned long num, Item *&item);
-
- /** get particular item in the sequence
- * @param num number of the item to be retrieved (0..num-1)
- * @return reference to specified item if successful, empty default item otherwise
- */
- Item &getItem(const unsigned long num);
-
- /** get particular item in the sequence
- * @param num number of the item to be retrieved (0..num-1)
- * @return const reference to specified item if successful, empty default item otherwise
- */
- const Item &getItem(const unsigned long num) const;
-
- /** get particular item in the sequence
- * @param num number of the item to be retrieved (0..num-1)
- * @return reference to specified item if successful, empty default item otherwise
- */
- Item &operator[](const unsigned long num);
-
- /** get particular item in the sequence
- * @param num number of the item to be retrieved (0..num-1)
- * @return const reference to specified item if successful, empty default item otherwise
- */
- const Item &operator[](const unsigned long num) const;
-
- /** add new item to the end of this sequence
- * @param item reference to new item pointer (result variable)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition addItem(Item *&item);
-
- /** insert new item into the sequence
- * @param pos position where the new item is to be inserted (0..num)
- * @param item reference to new item pointer (result variable)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition insertItem(const unsigned long pos, Item *&item);
-
- /** remove particular item from the sequence
- * @param pos position of the item to be removed (0..num-1)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition removeItem(const unsigned long pos);
-
- // --- input/output methods ---
-
- /** read sequence of items from dataset
- * @param dataset reference to DICOM dataset from which the sequence should be read
- * @param card cardinality (valid range for number of items)
- * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
- * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition read(DcmItem &dataset,
- const OFString &card,
- const OFString &type,
- const char *moduleName = NULL);
-
- /** write sequence of items to dataset
- * @param dataset reference to DICOM dataset to which the sequence should be written
- * @param card cardinality (valid range for number of items)
- * @param type value type (valid value: "1", "2" or something else which is not checked)
- * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition write(DcmItem &dataset,
- const OFString &card,
- const OFString &type,
- const char *moduleName = NULL);
-
- protected:
-
- /** goto particular item in the sequence
- * @param num number of the item to be selected (0..num-1)
- * @param iterator list iterator storing the position of the item
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition gotoItem(const unsigned long num,
- OFListIterator(Item *) &iterator);
-
- /** goto particular item in the sequence
- * @param num number of the item to be selected (0..num-1)
- * @param iterator list iterator storing the position of the item
- * @return status, EC_Normal if successful, an error code otherwise
- */
- OFCondition gotoItem(const unsigned long num,
- OFListConstIterator(Item *) &iterator) const;
-
- private:
-
- /// internal flag used to mark the empty default sequence
- /*const*/ OFBool EmptyDefaultSequence;
-
- /// list of items in this sequence
- OFList<Item *> SequenceOfItems;
- /// currently selected item
- OFListIterator(Item *) CurrentItem;
- /// empty default item
- Item EmptyItem;
-
-};
-
-
-#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTApplicatorSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTApplicatorSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTApplicatorSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTApplicatorSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTApplicationSetupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBrachyAccessoryDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTContrastBolusAgentSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBrachyControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBlockSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getSourceToBlockTrayDistance(Float64 &value, const unsigned long pos = 0) const;
+ /** get TrayAccessoryCode (300a,0355)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getTrayAccessoryCode(OFString &value, const signed long pos = 0) const;
+
// --- set DICOM attribute values ---
/** set AccessoryCode (300a,00f9)
*/
OFCondition setSourceToBlockTrayDistance(const OFString &value, const OFBool check = OFTrue);
+ /** set TrayAccessoryCode (300a,0355)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setTrayAccessoryCode(const OFString &value, const OFBool check = OFTrue);
+
private:
/// internal flag used to mark the empty default item
DcmShortString MaterialID;
/// SourceToBlockTrayDistance (300a,00f6) vr=DS, vm=1, type=2
DcmDecimalString SourceToBlockTrayDistance;
+ /// TrayAccessoryCode (300a,0355) vr=LO, vm=1, type=3
+ DcmLongString TrayAccessoryCode;
};
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBlockSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getSourceToBlockTrayDistance(Float64 &value, const unsigned long pos = 0) const;
+ /** get TrayAccessoryCode (300a,0355)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getTrayAccessoryCode(OFString &value, const signed long pos = 0) const;
+
// --- set DICOM attribute values ---
/** set AccessoryCode (300a,00f9)
*/
OFCondition setSourceToBlockTrayDistance(const OFString &value, const OFBool check = OFTrue);
+ /** set TrayAccessoryCode (300a,0355)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setTrayAccessoryCode(const OFString &value, const OFBool check = OFTrue);
+
private:
/// internal flag used to mark the empty default item
DcmShortString MaterialID;
/// SourceToBlockTrayDistance (300a,00f6) vr=DS, vm=1, type=2
DcmDecimalString SourceToBlockTrayDistance;
+ /// TrayAccessoryCode (300a,0355) vr=LO, vm=1, type=3
+ DcmLongString TrayAccessoryCode;
};
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamLimitingDeviceLeafPairsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamLimitingDevicePositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamLimitingDeviceSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamLimitingDeviceSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamLimitingDeviceSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamLimitingDeviceToleranceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBreedRegistryCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBrachyReferencedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBreedRegistrationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBlockSlabSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTBeamDoseVerificationControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getAverageBeamDosePointSSD(Float32 &value, const unsigned long pos = 0) const;
- /** get AverageBeamDosePointSourceToExternalContourSurfaceDistance (300a,0131)
+ /** get AverageBeamDosePointSourceToExternalContourDistance (300a,0131)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
* @return status, EC_Normal if successful, an error code otherwise
*/
- OFCondition getAverageBeamDosePointSourceToExternalContourSurfaceDistance(Float32 &value, const unsigned long pos = 0) const;
+ OFCondition getAverageBeamDosePointSourceToExternalContourDistance(Float32 &value, const unsigned long pos = 0) const;
/** get CumulativeMetersetWeight (300a,0134)
* @param value reference to variable in which the value should be stored
*/
OFCondition setAverageBeamDosePointSSD(const Float32 value, const unsigned long pos = 0);
- /** set AverageBeamDosePointSourceToExternalContourSurfaceDistance (300a,0131)
+ /** set AverageBeamDosePointSourceToExternalContourDistance (300a,0131)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
* @return status, EC_Normal if successful, an error code otherwise
*/
- OFCondition setAverageBeamDosePointSourceToExternalContourSurfaceDistance(const Float32 value, const unsigned long pos = 0);
+ OFCondition setAverageBeamDosePointSourceToExternalContourDistance(const Float32 value, const unsigned long pos = 0);
/** set CumulativeMetersetWeight (300a,0134)
* @param value value to be set (single value only) or "" for no value
DcmFloatingPointSingle AverageBeamDosePointEquivalentDepth;
/// AverageBeamDosePointSSD (300a,008f) vr=FL, vm=1, type=2C
DcmFloatingPointSingle AverageBeamDosePointSSD;
- /// AverageBeamDosePointSourceToExternalContourSurfaceDistance (300a,0131) vr=FL, vm=1, type=3
- DcmFloatingPointSingle AverageBeamDosePointSourceToExternalContourSurfaceDistance;
+ /// AverageBeamDosePointSourceToExternalContourDistance (300a,0131) vr=FL, vm=1, type=3
+ DcmFloatingPointSingle AverageBeamDosePointSourceToExternalContourDistance;
/// CumulativeMetersetWeight (300a,0134) vr=DS, vm=1, type=1
DcmDecimalString CumulativeMetersetWeight;
/// ReferencedControlPointIndex (300c,00f0) vr=IS, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTContrastBolusAdministrationRouteSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTConceptCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTConsentForClinicalTrialUseSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTCalculatedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTContributingEquipmentSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTContextGroupIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTCGIS_H
+#define DRTCGIS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+
+
+/** Interface class for ContextGroupIdentificationSequence (0008,0123)
+ */
+class DCMTK_DCMRT_EXPORT DRTContextGroupIdentificationSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get ContextGroupVersion (0008,0106)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextIdentifier (0008,010f)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextIdentifier(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextUID (0008,0117)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextUID(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResource (0008,0105)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+
+ // --- set DICOM attribute values ---
+
+ /** set ContextGroupVersion (0008,0106)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextIdentifier (0008,010f)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextIdentifier(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextUID (0008,0117)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResource (0008,0105)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// ContextGroupVersion (0008,0106) vr=DT, vm=1, type=1
+ DcmDateTime ContextGroupVersion;
+ /// ContextIdentifier (0008,010f) vr=CS, vm=1, type=1
+ DcmCodeString ContextIdentifier;
+ /// ContextUID (0008,0117) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier ContextUID;
+ /// MappingResource (0008,0105) vr=CS, vm=1, type=1
+ DcmCodeString MappingResource;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTContextGroupIdentificationSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTContextGroupIdentificationSequence(const DRTContextGroupIdentificationSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTContextGroupIdentificationSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTContextGroupIdentificationSequence &operator=(const DRTContextGroupIdentificationSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTChannelSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTContentItemModifierSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTContourImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTConceptNameCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTCompensatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getSourceToCompensatorTrayDistance(Float64 &value, const unsigned long pos = 0) const;
+ /** get TrayAccessoryCode (300a,0355)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getTrayAccessoryCode(OFString &value, const signed long pos = 0) const;
+
// --- set DICOM attribute values ---
/** set AccessoryCode (300a,00f9)
*/
OFCondition setSourceToCompensatorTrayDistance(const OFString &value, const OFBool check = OFTrue);
+ /** set TrayAccessoryCode (300a,0355)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setTrayAccessoryCode(const OFString &value, const OFBool check = OFTrue);
+
private:
/// internal flag used to mark the empty default item
DcmDecimalString SourceToCompensatorDistance;
/// SourceToCompensatorTrayDistance (300a,00e6) vr=DS, vm=1, type=2
DcmDecimalString SourceToCompensatorTrayDistance;
+ /// TrayAccessoryCode (300a,0355) vr=LO, vm=1, type=3
+ DcmLongString TrayAccessoryCode;
};
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTCorrectedParameterSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTConsultingPhysicianIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTContourSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTConversionSourceAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTChannelShieldSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTCodingSchemeIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTChannelSourceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDerivationCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTDeliveredDepthDoseParametersSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTDDDPS_H
+#define DRTDDDPS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+
+
+/** Interface class for DeliveredDepthDoseParametersSequence (300a,0506)
+ */
+class DCMTK_DCMRT_EXPORT DRTDeliveredDepthDoseParametersSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get DeliveredDistalDepth (300a,0508)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDeliveredDistalDepth(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get DeliveredDistalDepthFraction (300a,0507)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDeliveredDistalDepthFraction(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get DeliveredNominalRangeModulatedRegionDepths (300a,0510)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDeliveredNominalRangeModulatedRegionDepths(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get DeliveredNominalRangeModulationFractions (300a,0509)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDeliveredNominalRangeModulationFractions(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get DeliveredReferenceDoseDefinition (300a,0511)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDeliveredReferenceDoseDefinition(OFString &value, const signed long pos = 0) const;
+
+ // --- set DICOM attribute values ---
+
+ /** set DeliveredDistalDepth (300a,0508)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDeliveredDistalDepth(const Float32 value, const unsigned long pos = 0);
+
+ /** set DeliveredDistalDepthFraction (300a,0507)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDeliveredDistalDepthFraction(const Float32 value, const unsigned long pos = 0);
+
+ /** set DeliveredNominalRangeModulatedRegionDepths (300a,0510)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=2
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDeliveredNominalRangeModulatedRegionDepths(const Float32 value, const unsigned long pos = 0);
+
+ /** set DeliveredNominalRangeModulationFractions (300a,0509)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=2
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDeliveredNominalRangeModulationFractions(const Float32 value, const unsigned long pos = 0);
+
+ /** set DeliveredReferenceDoseDefinition (300a,0511)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDeliveredReferenceDoseDefinition(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// DeliveredDistalDepth (300a,0508) vr=FL, vm=1, type=1
+ DcmFloatingPointSingle DeliveredDistalDepth;
+ /// DeliveredDistalDepthFraction (300a,0507) vr=FL, vm=1, type=1
+ DcmFloatingPointSingle DeliveredDistalDepthFraction;
+ /// DeliveredNominalRangeModulatedRegionDepths (300a,0510) vr=FL, vm=2, type=1C
+ DcmFloatingPointSingle DeliveredNominalRangeModulatedRegionDepths;
+ /// DeliveredNominalRangeModulationFractions (300a,0509) vr=FL, vm=2, type=1C
+ DcmFloatingPointSingle DeliveredNominalRangeModulationFractions;
+ /// DeliveredReferenceDoseDefinition (300a,0511) vr=CS, vm=1, type=1
+ DcmCodeString DeliveredReferenceDoseDefinition;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTDeliveredDepthDoseParametersSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTDeliveredDepthDoseParametersSequence(const DRTDeliveredDepthDoseParametersSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTDeliveredDepthDoseParametersSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTDeliveredDepthDoseParametersSequence &operator=(const DRTDeliveredDepthDoseParametersSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTDepthDoseParametersSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTDDPS_H
+#define DRTDDPS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+
+
+/** Interface class for DepthDoseParametersSequence (300a,0505)
+ */
+class DCMTK_DCMRT_EXPORT DRTDepthDoseParametersSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get DistalDepth (300a,0502)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDistalDepth(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get DistalDepthFraction (300a,0501)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDistalDepthFraction(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get NominalRangeModulatedRegionDepths (300a,0504)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getNominalRangeModulatedRegionDepths(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get NominalRangeModulationFractions (300a,0503)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getNominalRangeModulationFractions(Float32 &value, const unsigned long pos = 0) const;
+
+ /** get ReferenceDoseDefinition (300a,0512)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getReferenceDoseDefinition(OFString &value, const signed long pos = 0) const;
+
+ // --- set DICOM attribute values ---
+
+ /** set DistalDepth (300a,0502)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDistalDepth(const Float32 value, const unsigned long pos = 0);
+
+ /** set DistalDepthFraction (300a,0501)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDistalDepthFraction(const Float32 value, const unsigned long pos = 0);
+
+ /** set NominalRangeModulatedRegionDepths (300a,0504)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=2
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setNominalRangeModulatedRegionDepths(const Float32 value, const unsigned long pos = 0);
+
+ /** set NominalRangeModulationFractions (300a,0503)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=2
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setNominalRangeModulationFractions(const Float32 value, const unsigned long pos = 0);
+
+ /** set ReferenceDoseDefinition (300a,0512)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setReferenceDoseDefinition(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// DistalDepth (300a,0502) vr=FL, vm=1, type=1
+ DcmFloatingPointSingle DistalDepth;
+ /// DistalDepthFraction (300a,0501) vr=FL, vm=1, type=1
+ DcmFloatingPointSingle DistalDepthFraction;
+ /// NominalRangeModulatedRegionDepths (300a,0504) vr=FL, vm=2, type=1C
+ DcmFloatingPointSingle NominalRangeModulatedRegionDepths;
+ /// NominalRangeModulationFractions (300a,0503) vr=FL, vm=2, type=1C
+ DcmFloatingPointSingle NominalRangeModulationFractions;
+ /// ReferenceDoseDefinition (300a,0512) vr=CS, vm=1, type=1
+ DcmCodeString ReferenceDoseDefinition;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTDepthDoseParametersSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTDepthDoseParametersSequence(const DRTDepthDoseParametersSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTDepthDoseParametersSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTDepthDoseParametersSequence &operator=(const DRTDepthDoseParametersSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDeidentificationActionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDeidentificationMethodCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDICOMMediaRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDICOMRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmLongString ManufacturerModelName;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDigitalSignaturePurposeCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDigitalSignaturesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDVHSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTDVHReferencedROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTEncryptedAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTEquivalentCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getCodingSchemeVersion(OFString &value, const signed long pos = 0) const;
+ /** get ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionCreatorUID(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupExtensionFlag (0008,010b)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionFlag(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupLocalVersion (0008,0107)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupLocalVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupVersion (0008,0106)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextIdentifier (0008,010f)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextIdentifier(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextUID (0008,0117)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextUID(OFString &value, const signed long pos = 0) const;
+
/** get LongCodeValue (0008,0119)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition getLongCodeValue(OFString &value, const signed long pos = 0) const;
+ /** get MappingResource (0008,0105)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceUID (0008,0118)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceUID(OFString &value, const signed long pos = 0) const;
+
/** get URNCodeValue (0008,0120)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setCodingSchemeVersion(const OFString &value, const OFBool check = OFTrue);
+ /** set ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupExtensionFlag (0008,010b)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionFlag(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupLocalVersion (0008,0107)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupLocalVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupVersion (0008,0106)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextIdentifier (0008,010f)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextIdentifier(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextUID (0008,0117)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextUID(const OFString &value, const OFBool check = OFTrue);
+
/** set LongCodeValue (0008,0119)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
*/
OFCondition setLongCodeValue(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResource (0008,0105)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceUID (0008,0118)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceUID(const OFString &value, const OFBool check = OFTrue);
+
/** set URNCodeValue (0008,0120)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UR) and VM (1) if enabled
DcmShortString CodingSchemeDesignator;
/// CodingSchemeVersion (0008,0103) vr=SH, vm=1, type=1C
DcmShortString CodingSchemeVersion;
+ /// ContextGroupExtensionCreatorUID (0008,010d) vr=UI, vm=1, type=1C
+ DcmUniqueIdentifier ContextGroupExtensionCreatorUID;
+ /// ContextGroupExtensionFlag (0008,010b) vr=CS, vm=1, type=3
+ DcmCodeString ContextGroupExtensionFlag;
+ /// ContextGroupLocalVersion (0008,0107) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupLocalVersion;
+ /// ContextGroupVersion (0008,0106) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupVersion;
+ /// ContextIdentifier (0008,010f) vr=CS, vm=1, type=3
+ DcmCodeString ContextIdentifier;
+ /// ContextUID (0008,0117) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier ContextUID;
/// LongCodeValue (0008,0119) vr=UC, vm=1, type=1C
DcmUnlimitedCharacters LongCodeValue;
+ /// MappingResource (0008,0105) vr=CS, vm=1, type=1C
+ DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
+ /// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
DcmUniversalResourceIdentifierOrLocator URNCodeValue;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTExposureSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTFixationDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTFrameExtractionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTFractionGroupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTFractionGroupSummarySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTFluenceMapSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTFractionStatusSummarySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTGeneralAccessorySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTGroupOfPatientsIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTGPIS_H
+#define DRTGPIS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
+
+
+/** Interface class for GroupOfPatientsIdentificationSequence (0010,0027)
+ */
+class DCMTK_DCMRT_EXPORT DRTGroupOfPatientsIdentificationSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get IssuerOfPatientID (0010,0021)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getIssuerOfPatientID(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientID (0010,0020)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPatientID(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientPosition (0018,5100)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPatientPosition(OFString &value, const signed long pos = 0) const;
+
+ /** get SubjectRelativePositionInImage (0010,0028)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getSubjectRelativePositionInImage(Uint16 &value, const unsigned long pos = 0) const;
+
+ // --- get DICOM sequence attributes ---
+
+ /** get IssuerOfPatientIDQualifiersSequence (0010,0024)
+ * @return reference to sequence element
+ */
+ DRTIssuerOfPatientIDQualifiersSequence &getIssuerOfPatientIDQualifiersSequence()
+ { return IssuerOfPatientIDQualifiersSequence; }
+
+ /** get IssuerOfPatientIDQualifiersSequence (0010,0024)
+ * @return const reference to sequence element
+ */
+ const DRTIssuerOfPatientIDQualifiersSequence &getIssuerOfPatientIDQualifiersSequence() const
+ { return IssuerOfPatientIDQualifiersSequence; }
+
+ // --- set DICOM attribute values ---
+
+ /** set IssuerOfPatientID (0010,0021)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setIssuerOfPatientID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set PatientID (0010,0020)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPatientID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set PatientPosition (0018,5100)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPatientPosition(const OFString &value, const OFBool check = OFTrue);
+
+ /** set SubjectRelativePositionInImage (0010,0028)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=3
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setSubjectRelativePositionInImage(const Uint16 value, const unsigned long pos = 0);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// IssuerOfPatientID (0010,0021) vr=LO, vm=1, type=3
+ DcmLongString IssuerOfPatientID;
+ /// IssuerOfPatientIDQualifiersSequence (0010,0024) vr=SQ, vm=1, type=3
+ DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
+ /// PatientID (0010,0020) vr=LO, vm=1, type=1
+ DcmLongString PatientID;
+ /// PatientPosition (0018,5100) vr=CS, vm=1, type=3
+ DcmCodeString PatientPosition;
+ /// SubjectRelativePositionInImage (0010,0028) vr=US, vm=3, type=3
+ DcmUnsignedShort SubjectRelativePositionInImage;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTGroupOfPatientsIdentificationSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTGroupOfPatientsIdentificationSequence(const DRTGroupOfPatientsIdentificationSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTGroupOfPatientsIdentificationSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTGroupOfPatientsIdentificationSequence &operator=(const DRTGroupOfPatientsIdentificationSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTHL7StructuredDocumentReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIssuerOfAdmissionIDSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIssuerOfAccessionNumberSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonBeamLimitingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonBlockSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonBeamSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/ofstd/oflist.h" // for standard list class
#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
#include "dcmtk/dcmrt/seq/drtas6.h" // for ApplicatorSequence
+#include "dcmtk/dcmrt/seq/drtddps.h" // for DepthDoseParametersSequence
#include "dcmtk/dcmrt/seq/drtgas.h" // for GeneralAccessorySequence
#include "dcmtk/dcmrt/seq/drtiblds.h" // for IonBeamLimitingDeviceSequence
#include "dcmtk/dcmrt/seq/drtibls.h" // for IonBlockSequence
*/
OFCondition getFinalCumulativeMetersetWeight(Float64 &value, const unsigned long pos = 0) const;
+ /** get FixationEye (300a,0150)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getFixationEye(OFString &value, const signed long pos = 0) const;
+
/** get FixationLightAzimuthalAngle (300a,0356)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
*/
OFCondition getManufacturerModelName(OFString &value, const signed long pos = 0) const;
+ /** get ModulatedScanModeType (300a,0309)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getModulatedScanModeType(OFString &value, const signed long pos = 0) const;
+
/** get NumberOfBlocks (300a,00f0)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTApplicatorSequenceInRTIonBeamsModule &getApplicatorSequence() const
{ return ApplicatorSequence; }
+ /** get DepthDoseParametersSequence (300a,0505)
+ * @return reference to sequence element
+ */
+ DRTDepthDoseParametersSequence &getDepthDoseParametersSequence()
+ { return DepthDoseParametersSequence; }
+
+ /** get DepthDoseParametersSequence (300a,0505)
+ * @return const reference to sequence element
+ */
+ const DRTDepthDoseParametersSequence &getDepthDoseParametersSequence() const
+ { return DepthDoseParametersSequence; }
+
/** get GeneralAccessorySequence (300a,0420)
* @return reference to sequence element
*/
*/
OFCondition setFinalCumulativeMetersetWeight(const OFString &value, const OFBool check = OFTrue);
+ /** set FixationEye (300a,0150)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setFixationEye(const OFString &value, const OFBool check = OFTrue);
+
/** set FixationLightAzimuthalAngle (300a,0356)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
*/
OFCondition setManufacturerModelName(const OFString &value, const OFBool check = OFTrue);
+ /** set ModulatedScanModeType (300a,0309)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setModulatedScanModeType(const OFString &value, const OFBool check = OFTrue);
+
/** set NumberOfBlocks (300a,00f0)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (IS) and VM (1) if enabled
DcmIntegerString BeamNumber;
/// BeamType (300a,00c4) vr=CS, vm=1, type=1
DcmCodeString BeamType;
+ /// DepthDoseParametersSequence (300a,0505) vr=SQ, vm=1, type=3
+ DRTDepthDoseParametersSequence DepthDoseParametersSequence;
/// DeviceSerialNumber (0018,1000) vr=LO, vm=1, type=3
DcmLongString DeviceSerialNumber;
/// FinalCumulativeMetersetWeight (300a,010e) vr=DS, vm=1, type=1C
DcmDecimalString FinalCumulativeMetersetWeight;
+ /// FixationEye (300a,0150) vr=CS, vm=1, type=3
+ DcmCodeString FixationEye;
/// FixationLightAzimuthalAngle (300a,0356) vr=FL, vm=1, type=3
DcmFloatingPointSingle FixationLightAzimuthalAngle;
/// FixationLightPolarAngle (300a,0358) vr=FL, vm=1, type=3
DcmLongString Manufacturer;
/// ManufacturerModelName (0008,1090) vr=LO, vm=1, type=3
DcmLongString ManufacturerModelName;
+ /// ModulatedScanModeType (300a,0309) vr=CS, vm=1, type=1C
+ DcmCodeString ModulatedScanModeType;
/// NumberOfBlocks (300a,00f0) vr=IS, vm=1, type=1
DcmIntegerString NumberOfBlocks;
/// NumberOfBoli (300a,00ed) vr=IS, vm=1, type=1
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonControlPointDeliverySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getBeamLimitingDeviceRotationDirection(OFString &value, const signed long pos = 0) const;
+ /** get ChairHeadFramePosition (300a,0151)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getChairHeadFramePosition(OFString &value, const signed long pos = 0) const;
+
+ /** get ChairHeadFramePosition (300a,0151)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getChairHeadFramePosition(Float64 &value, const unsigned long pos = 0) const;
+
/** get DeliveredMeterset (3008,0044)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition getScanSpotPositionMap(Float32 &value, const unsigned long pos = 0) const;
+ /** get ScanSpotPrescribedIndices (300a,0391)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getScanSpotPrescribedIndices(OFString &value, const signed long pos = 0) const;
+
+ /** get ScanSpotPrescribedIndices (300a,0391)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getScanSpotPrescribedIndices(Sint32 &value, const unsigned long pos = 0) const;
+
+ /** get ScanSpotReordered (300a,0393)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getScanSpotReordered(OFString &value, const signed long pos = 0) const;
+
/** get ScanSpotTuneID (300a,0390)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setBeamLimitingDeviceRotationDirection(const OFString &value, const OFBool check = OFTrue);
+ /** set ChairHeadFramePosition (300a,0151)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setChairHeadFramePosition(const OFString &value, const OFBool check = OFTrue);
+
/** set DeliveredMeterset (3008,0044)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
OFCondition setScanSpotPositionMap(const Float32 value, const unsigned long pos = 0);
+ /** set ScanSpotPrescribedIndices (300a,0391)
+ * @param value value to be set (possibly multi-valued) or "" for no value
+ * @param check check 'value' for conformance with VR (IS) and VM (1-n) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setScanSpotPrescribedIndices(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ScanSpotReordered (300a,0393)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setScanSpotReordered(const OFString &value, const OFBool check = OFTrue);
+
/** set ScanSpotTuneID (300a,0390)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
DRTBeamLimitingDevicePositionSequence BeamLimitingDevicePositionSequence;
/// BeamLimitingDeviceRotationDirection (300a,0121) vr=CS, vm=1, type=1C
DcmCodeString BeamLimitingDeviceRotationDirection;
+ /// ChairHeadFramePosition (300a,0151) vr=DS, vm=1, type=3
+ DcmDecimalString ChairHeadFramePosition;
/// CorrectedParameterSequence (3008,0068) vr=SQ, vm=1, type=3
DRTCorrectedParameterSequence CorrectedParameterSequence;
/// DeliveredMeterset (3008,0044) vr=DS, vm=1, type=1
DcmFloatingPointSingle ScanSpotMetersetsDelivered;
/// ScanSpotPositionMap (300a,0394) vr=FL, vm=1-n, type=1C
DcmFloatingPointSingle ScanSpotPositionMap;
+ /// ScanSpotPrescribedIndices (300a,0391) vr=IS, vm=1-n, type=1C
+ DcmIntegerString ScanSpotPrescribedIndices;
+ /// ScanSpotReordered (300a,0393) vr=CS, vm=1, type=3
+ DcmCodeString ScanSpotReordered;
/// ScanSpotTuneID (300a,0390) vr=SH, vm=1, type=1C
DcmShortString ScanSpotTuneID;
/// ScanningSpotSize (300a,0398) vr=FL, vm=2, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getBeamLimitingDeviceRotationDirection(OFString &value, const signed long pos = 0) const;
+ /** get ChairHeadFramePosition (300a,0151)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getChairHeadFramePosition(OFString &value, const signed long pos = 0) const;
+
+ /** get ChairHeadFramePosition (300a,0151)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getChairHeadFramePosition(Float64 &value, const unsigned long pos = 0) const;
+
/** get ControlPointIndex (300a,0112)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition getScanSpotPositionMap(Float32 &value, const unsigned long pos = 0) const;
+ /** get ScanSpotReorderingAllowed (300a,0395)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getScanSpotReorderingAllowed(OFString &value, const signed long pos = 0) const;
+
/** get ScanSpotTuneID (300a,0390)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setBeamLimitingDeviceRotationDirection(const OFString &value, const OFBool check = OFTrue);
+ /** set ChairHeadFramePosition (300a,0151)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setChairHeadFramePosition(const OFString &value, const OFBool check = OFTrue);
+
/** set ControlPointIndex (300a,0112)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (IS) and VM (1) if enabled
*/
OFCondition setScanSpotPositionMap(const Float32 value, const unsigned long pos = 0);
+ /** set ScanSpotReorderingAllowed (300a,0395)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setScanSpotReorderingAllowed(const OFString &value, const OFBool check = OFTrue);
+
/** set ScanSpotTuneID (300a,0390)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
DRTBeamLimitingDevicePositionSequence BeamLimitingDevicePositionSequence;
/// BeamLimitingDeviceRotationDirection (300a,0121) vr=CS, vm=1, type=1C
DcmCodeString BeamLimitingDeviceRotationDirection;
+ /// ChairHeadFramePosition (300a,0151) vr=DS, vm=1, type=3
+ DcmDecimalString ChairHeadFramePosition;
/// ControlPointIndex (300a,0112) vr=IS, vm=1, type=1
DcmIntegerString ControlPointIndex;
/// CumulativeMetersetWeight (300a,0134) vr=DS, vm=1, type=2
DcmFloatingPointSingle ScanSpotMetersetWeights;
/// ScanSpotPositionMap (300a,0394) vr=FL, vm=1-n, type=1C
DcmFloatingPointSingle ScanSpotPositionMap;
+ /// ScanSpotReorderingAllowed (300a,0395) vr=CS, vm=1, type=3
+ DcmCodeString ScanSpotReorderingAllowed;
/// ScanSpotTuneID (300a,0390) vr=SH, vm=1, type=1C
DcmShortString ScanSpotTuneID;
/// ScanningSpotSize (300a,0398) vr=FL, vm=2, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTInstitutionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIconImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getBluePaletteColorLookupTableDescriptor(Uint16 &value, const unsigned long pos = 0) const;
+ /** get ColorSpace (0028,2002)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getColorSpace(OFString &value, const signed long pos = 0) const;
+
/** get Columns (0028,0011)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
*/
OFCondition setBluePaletteColorLookupTableDescriptor(const Uint16 value, const unsigned long pos = 0);
+ /** set ColorSpace (0028,2002)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setColorSpace(const OFString &value, const OFBool check = OFTrue);
+
/** set Columns (0028,0011)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
DcmOtherByteOtherWord BluePaletteColorLookupTableData;
/// BluePaletteColorLookupTableDescriptor (0028,1103) vr=US/SS, vm=3, type=1C
DcmUnsignedShort BluePaletteColorLookupTableDescriptor;
+ /// ColorSpace (0028,2002) vr=CS, vm=1, type=3
+ DcmCodeString ColorSpace;
/// Columns (0028,0011) vr=US, vm=1, type=1
DcmUnsignedShort Columns;
/// GreenPaletteColorLookupTableData (0028,1202) vr=OW, vm=1, type=1C
DcmCodeString PhotometricInterpretation;
/// PixelAspectRatio (0028,0034) vr=IS, vm=2, type=1C
DcmIntegerString PixelAspectRatio;
- /// PixelData (7fe0,0010) vr=OB/OW, vm=1, type=1C
+ /// PixelData (7fe0,0010) vr=OB/OW, vm=1, type=1
DcmPixelData PixelData;
/// PixelRepresentation (0028,0103) vr=US, vm=1, type=1
DcmUnsignedShort PixelRepresentation;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIssuerOfPatientIDQualifiersSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonRangeCompensatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIssuerOfServiceEpisodeIDSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonToleranceTableSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getBeamLimitingDeviceAngleTolerance(Float64 &value, const unsigned long pos = 0) const;
+ /** get ChairHeadFramePositionTolerance (300a,0153)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getChairHeadFramePositionTolerance(OFString &value, const signed long pos = 0) const;
+
+ /** get ChairHeadFramePositionTolerance (300a,0153)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getChairHeadFramePositionTolerance(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get FixationLightAzimuthalAngleTolerance (300a,0154)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getFixationLightAzimuthalAngleTolerance(OFString &value, const signed long pos = 0) const;
+
+ /** get FixationLightAzimuthalAngleTolerance (300a,0154)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getFixationLightAzimuthalAngleTolerance(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get FixationLightPolarAngleTolerance (300a,0155)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getFixationLightPolarAngleTolerance(OFString &value, const signed long pos = 0) const;
+
+ /** get FixationLightPolarAngleTolerance (300a,0155)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getFixationLightPolarAngleTolerance(Float64 &value, const unsigned long pos = 0) const;
+
/** get GantryAngleTolerance (300a,0044)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition getGantryAngleTolerance(Float64 &value, const unsigned long pos = 0) const;
+ /** get HeadFixationAngleTolerance (300a,0152)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getHeadFixationAngleTolerance(OFString &value, const signed long pos = 0) const;
+
+ /** get HeadFixationAngleTolerance (300a,0152)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getHeadFixationAngleTolerance(Float64 &value, const unsigned long pos = 0) const;
+
/** get PatientSupportAngleTolerance (300a,004c)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setBeamLimitingDeviceAngleTolerance(const OFString &value, const OFBool check = OFTrue);
+ /** set ChairHeadFramePositionTolerance (300a,0153)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setChairHeadFramePositionTolerance(const OFString &value, const OFBool check = OFTrue);
+
+ /** set FixationLightAzimuthalAngleTolerance (300a,0154)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setFixationLightAzimuthalAngleTolerance(const OFString &value, const OFBool check = OFTrue);
+
+ /** set FixationLightPolarAngleTolerance (300a,0155)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setFixationLightPolarAngleTolerance(const OFString &value, const OFBool check = OFTrue);
+
/** set GantryAngleTolerance (300a,0044)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
*/
OFCondition setGantryAngleTolerance(const OFString &value, const OFBool check = OFTrue);
+ /** set HeadFixationAngleTolerance (300a,0152)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setHeadFixationAngleTolerance(const OFString &value, const OFBool check = OFTrue);
+
/** set PatientSupportAngleTolerance (300a,004c)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
DcmDecimalString BeamLimitingDeviceAngleTolerance;
/// BeamLimitingDeviceToleranceSequence (300a,0048) vr=SQ, vm=1, type=3
DRTBeamLimitingDeviceToleranceSequence BeamLimitingDeviceToleranceSequence;
+ /// ChairHeadFramePositionTolerance (300a,0153) vr=DS, vm=1, type=3
+ DcmDecimalString ChairHeadFramePositionTolerance;
+ /// FixationLightAzimuthalAngleTolerance (300a,0154) vr=DS, vm=1, type=3
+ DcmDecimalString FixationLightAzimuthalAngleTolerance;
+ /// FixationLightPolarAngleTolerance (300a,0155) vr=DS, vm=1, type=3
+ DcmDecimalString FixationLightPolarAngleTolerance;
/// GantryAngleTolerance (300a,0044) vr=DS, vm=1, type=3
DcmDecimalString GantryAngleTolerance;
+ /// HeadFixationAngleTolerance (300a,0152) vr=DS, vm=1, type=3
+ DcmDecimalString HeadFixationAngleTolerance;
/// PatientSupportAngleTolerance (300a,004c) vr=DS, vm=1, type=3
DcmDecimalString PatientSupportAngleTolerance;
/// SnoutPositionTolerance (300a,004b) vr=FL, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonWedgePositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTIonWedgeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTLateralSpreadingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTMultiplexedAudioChannelsDescriptionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTModifiedAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTMeasuredDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTModalityLUTSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/// internal flag used to mark the empty default item
/*const*/ OFBool EmptyDefaultItem;
- /// LUTData (0028,3006) vr=US/OW, vm=1-n, type=1C
+ /// LUTData (0028,3006) vr=US/OW, vm=1-n, type=1
DcmOtherByteOtherWord LUTData;
- /// LUTDescriptor (0028,3002) vr=US/SS, vm=3, type=1C
+ /// LUTDescriptor (0028,3002) vr=US/SS, vm=3, type=1
DcmUnsignedShort LUTDescriptor;
/// LUTExplanation (0028,3003) vr=LO, vm=1, type=3
DcmLongString LUTExplanation;
- /// ModalityLUTType (0028,3004) vr=LO, vm=1, type=1C
+ /// ModalityLUTType (0028,3004) vr=LO, vm=1, type=1
DcmLongString ModalityLUTType;
};
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTMACParametersSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTMappingResourceIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTMRIS_H
+#define DRTMRIS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+
+
+/** Interface class for MappingResourceIdentificationSequence (0008,0124)
+ */
+class DCMTK_DCMRT_EXPORT DRTMappingResourceIdentificationSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get MappingResource (0008,0105)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceUID (0008,0118)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceUID(OFString &value, const signed long pos = 0) const;
+
+ // --- set DICOM attribute values ---
+
+ /** set MappingResource (0008,0105)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceUID (0008,0118)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceUID(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// MappingResource (0008,0105) vr=CS, vm=1, type=1
+ DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
+ /// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier MappingResourceUID;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTMappingResourceIdentificationSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTMappingResourceIdentificationSequence(const DRTMappingResourceIdentificationSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTMappingResourceIdentificationSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTMappingResourceIdentificationSequence &operator=(const DRTMappingResourceIdentificationSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTMotionSynchronizationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTMeasurementUnitsCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTOriginalAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTOperatorIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTOtherPatientIDsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTOverrideSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/ofstd/oflist.h" // for standard list class
#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtois.h" // for OperatorIdentificationSequence
/** Interface class for OverrideSequence (3008,0060)
*/
OFCondition getParameterSequencePointer(OFString &value, const signed long pos = 0) const;
+ // --- get DICOM sequence attributes ---
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return reference to sequence element
+ */
+ DRTOperatorIdentificationSequence &getOperatorIdentificationSequence()
+ { return OperatorIdentificationSequence; }
+
+ /** get OperatorIdentificationSequence (0008,1072)
+ * @return const reference to sequence element
+ */
+ const DRTOperatorIdentificationSequence &getOperatorIdentificationSequence() const
+ { return OperatorIdentificationSequence; }
+
// --- set DICOM attribute values ---
/** set OperatorsName (0008,1070)
/// internal flag used to mark the empty default item
/*const*/ OFBool EmptyDefaultItem;
+ /// OperatorIdentificationSequence (0008,1072) vr=SQ, vm=1, type=3
+ DRTOperatorIdentificationSequence OperatorIdentificationSequence;
/// OperatorsName (0008,1070) vr=PN, vm=1-n, type=2
DcmPersonName OperatorsName;
/// OverrideParameterPointer (3008,0062) vr=AT, vm=1, type=1
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPatientBreedCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTProtocolContextSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPrivateDataElementCharacteristicsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/ofstd/oflist.h" // for standard list class
#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
#include "dcmtk/dcmrt/seq/drtdias.h" // for DeidentificationActionSequence
+#include "dcmtk/dcmrt/seq/drtpdeds.h" // for PrivateDataElementDefinitionSequence
/** Interface class for PrivateDataElementCharacteristicsSequence (0008,0300)
const DRTDeidentificationActionSequence &getDeidentificationActionSequence() const
{ return DeidentificationActionSequence; }
+ /** get PrivateDataElementDefinitionSequence (0008,0310)
+ * @return reference to sequence element
+ */
+ DRTPrivateDataElementDefinitionSequence &getPrivateDataElementDefinitionSequence()
+ { return PrivateDataElementDefinitionSequence; }
+
+ /** get PrivateDataElementDefinitionSequence (0008,0310)
+ * @return const reference to sequence element
+ */
+ const DRTPrivateDataElementDefinitionSequence &getPrivateDataElementDefinitionSequence() const
+ { return PrivateDataElementDefinitionSequence; }
+
// --- set DICOM attribute values ---
/** set BlockIdentifyingInformationStatus (0008,0303)
DcmUnsignedShort NonidentifyingPrivateElements;
/// PrivateCreatorReference (0008,0302) vr=LO, vm=1, type=1
DcmLongString PrivateCreatorReference;
+ /// PrivateDataElementDefinitionSequence (0008,0310) vr=SQ, vm=1, type=3
+ DRTPrivateDataElementDefinitionSequence PrivateDataElementDefinitionSequence;
/// PrivateGroupReference (0008,0301) vr=US, vm=1, type=1
DcmUnsignedShort PrivateGroupReference;
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTPrivateDataElementDefinitionSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTPDEDS_H
+#define DRTPDEDS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+
+
+/** Interface class for PrivateDataElementDefinitionSequence (0008,0310)
+ */
+class DCMTK_DCMRT_EXPORT DRTPrivateDataElementDefinitionSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get PrivateDataElement (0008,0308)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElement(Uint16 &value, const unsigned long pos = 0) const;
+
+ /** get PrivateDataElementDescription (0008,030e)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElementDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get PrivateDataElementEncoding (0008,030f)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElementEncoding(OFString &value, const signed long pos = 0) const;
+
+ /** get PrivateDataElementKeyword (0008,030d)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElementKeyword(OFString &value, const signed long pos = 0) const;
+
+ /** get PrivateDataElementName (0008,030c)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElementName(OFString &value, const signed long pos = 0) const;
+
+ /** get PrivateDataElementNumberOfItems (0008,030b)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElementNumberOfItems(Uint32 &value, const unsigned long pos = 0) const;
+
+ /** get PrivateDataElementValueMultiplicity (0008,0309)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElementValueMultiplicity(Uint32 &value, const unsigned long pos = 0) const;
+
+ /** get PrivateDataElementValueRepresentation (0008,030a)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPrivateDataElementValueRepresentation(OFString &value, const signed long pos = 0) const;
+
+ /** get RetrieveURI (0040,e010)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getRetrieveURI(OFString &value, const signed long pos = 0) const;
+
+ // --- set DICOM attribute values ---
+
+ /** set PrivateDataElement (0008,0308)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElement(const Uint16 value, const unsigned long pos = 0);
+
+ /** set PrivateDataElementDescription (0008,030e)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElementDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set PrivateDataElementEncoding (0008,030f)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElementEncoding(const OFString &value, const OFBool check = OFTrue);
+
+ /** set PrivateDataElementKeyword (0008,030d)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElementKeyword(const OFString &value, const OFBool check = OFTrue);
+
+ /** set PrivateDataElementName (0008,030c)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElementName(const OFString &value, const OFBool check = OFTrue);
+
+ /** set PrivateDataElementNumberOfItems (0008,030b)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1-2
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElementNumberOfItems(const Uint32 value, const unsigned long pos = 0);
+
+ /** set PrivateDataElementValueMultiplicity (0008,0309)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1-3
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElementValueMultiplicity(const Uint32 value, const unsigned long pos = 0);
+
+ /** set PrivateDataElementValueRepresentation (0008,030a)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPrivateDataElementValueRepresentation(const OFString &value, const OFBool check = OFTrue);
+
+ /** set RetrieveURI (0040,e010)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UR) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setRetrieveURI(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// PrivateDataElement (0008,0308) vr=US, vm=1, type=1
+ DcmUnsignedShort PrivateDataElement;
+ /// PrivateDataElementDescription (0008,030e) vr=UT, vm=1, type=3
+ DcmUnlimitedText PrivateDataElementDescription;
+ /// PrivateDataElementEncoding (0008,030f) vr=UT, vm=1, type=3
+ DcmUnlimitedText PrivateDataElementEncoding;
+ /// PrivateDataElementKeyword (0008,030d) vr=UC, vm=1, type=1
+ DcmUnlimitedCharacters PrivateDataElementKeyword;
+ /// PrivateDataElementName (0008,030c) vr=UC, vm=1, type=1
+ DcmUnlimitedCharacters PrivateDataElementName;
+ /// PrivateDataElementNumberOfItems (0008,030b) vr=UL, vm=1-2, type=1C
+ DcmUnsignedLong PrivateDataElementNumberOfItems;
+ /// PrivateDataElementValueMultiplicity (0008,0309) vr=UL, vm=1-3, type=1
+ DcmUnsignedLong PrivateDataElementValueMultiplicity;
+ /// PrivateDataElementValueRepresentation (0008,030a) vr=CS, vm=1, type=1
+ DcmCodeString PrivateDataElementValueRepresentation;
+ /// RetrieveURI (0040,e010) vr=UR, vm=1, type=3
+ DcmUniversalResourceIdentifierOrLocator RetrieveURI;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTPrivateDataElementDefinitionSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTPrivateDataElementDefinitionSequence(const DRTPrivateDataElementDefinitionSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTPrivateDataElementDefinitionSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTPrivateDataElementDefinitionSequence &operator=(const DRTPrivateDataElementDefinitionSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPrimaryFluenceModeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPersonIdentificationCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPurposeOfReferenceCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPhysiciansOfRecordIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPerformedProtocolCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// ProtocolContextSequence (0040,0440) vr=SQ, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPhysiciansReadingStudyIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPatientSpeciesCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPatientSizeCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPatientSetupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPredecessorStructureSetSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTPlannedVerificationImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTQuantityDefinitionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRequestAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBrachyApplicationSetupSequenceInRTDoseModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBrachyApplicationSetupSequenceInRTFractionSchemeModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRecordedBlockSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBolusSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBolusSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBolusSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBeamSequenceInRTDoseModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
// --- get DICOM attribute values ---
+ /** get AlternateBeamDose (300a,0091)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getAlternateBeamDose(OFString &value, const signed long pos = 0) const;
+
+ /** get AlternateBeamDose (300a,0091)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getAlternateBeamDose(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get AlternateBeamDoseType (300a,0092)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getAlternateBeamDoseType(OFString &value, const signed long pos = 0) const;
+
/** get BeamDeliveryDurationLimit (300a,00c5)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
*/
OFCondition getBeamDoseSpecificationPoint(OFVector<Float64> &value) const;
+ /** get BeamDoseType (300a,0090)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getBeamDoseType(OFString &value, const signed long pos = 0) const;
+
/** get BeamMeterset (300a,0086)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
// --- set DICOM attribute values ---
+ /** set AlternateBeamDose (300a,0091)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setAlternateBeamDose(const OFString &value, const OFBool check = OFTrue);
+
+ /** set AlternateBeamDoseType (300a,0092)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setAlternateBeamDoseType(const OFString &value, const OFBool check = OFTrue);
+
/** set BeamDeliveryDurationLimit (300a,00c5)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
*/
OFCondition setBeamDoseSpecificationPoint(const OFString &value, const OFBool check = OFTrue);
+ /** set BeamDoseType (300a,0090)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setBeamDoseType(const OFString &value, const OFBool check = OFTrue);
+
/** set BeamMeterset (300a,0086)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
/// internal flag used to mark the empty default item
/*const*/ OFBool EmptyDefaultItem;
+ /// AlternateBeamDose (300a,0091) vr=DS, vm=1, type=3
+ DcmDecimalString AlternateBeamDose;
+ /// AlternateBeamDoseType (300a,0092) vr=CS, vm=1, type=1C
+ DcmCodeString AlternateBeamDoseType;
/// BeamDeliveryDurationLimit (300a,00c5) vr=FD, vm=1, type=3
DcmFloatingPointDouble BeamDeliveryDurationLimit;
/// BeamDose (300a,0084) vr=DS, vm=1, type=3
DcmDecimalString BeamDose;
/// BeamDoseSpecificationPoint (300a,0082) vr=DS, vm=3, type=3
DcmDecimalString BeamDoseSpecificationPoint;
+ /// BeamDoseType (300a,0090) vr=CS, vm=1, type=1C
+ DcmCodeString BeamDoseType;
/// BeamDoseVerificationControlPointSequence (300a,008c) vr=SQ, vm=1, type=3
DRTBeamDoseVerificationControlPointSequence BeamDoseVerificationControlPointSequence;
/// BeamMeterset (300a,0086) vr=DS, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedBeamSequenceInRTFractionSchemeModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
// --- get DICOM attribute values ---
+ /** get AlternateBeamDose (300a,0091)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getAlternateBeamDose(OFString &value, const signed long pos = 0) const;
+
+ /** get AlternateBeamDose (300a,0091)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getAlternateBeamDose(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get AlternateBeamDoseType (300a,0092)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getAlternateBeamDoseType(OFString &value, const signed long pos = 0) const;
+
/** get BeamDeliveryDurationLimit (300a,00c5)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
*/
OFCondition getBeamDoseSpecificationPoint(OFVector<Float64> &value) const;
+ /** get BeamDoseType (300a,0090)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getBeamDoseType(OFString &value, const signed long pos = 0) const;
+
/** get BeamMeterset (300a,0086)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
// --- set DICOM attribute values ---
+ /** set AlternateBeamDose (300a,0091)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setAlternateBeamDose(const OFString &value, const OFBool check = OFTrue);
+
+ /** set AlternateBeamDoseType (300a,0092)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setAlternateBeamDoseType(const OFString &value, const OFBool check = OFTrue);
+
/** set BeamDeliveryDurationLimit (300a,00c5)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
*/
OFCondition setBeamDoseSpecificationPoint(const OFString &value, const OFBool check = OFTrue);
+ /** set BeamDoseType (300a,0090)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setBeamDoseType(const OFString &value, const OFBool check = OFTrue);
+
/** set BeamMeterset (300a,0086)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (DS) and VM (1) if enabled
/// internal flag used to mark the empty default item
/*const*/ OFBool EmptyDefaultItem;
+ /// AlternateBeamDose (300a,0091) vr=DS, vm=1, type=3
+ DcmDecimalString AlternateBeamDose;
+ /// AlternateBeamDoseType (300a,0092) vr=CS, vm=1, type=1C
+ DcmCodeString AlternateBeamDoseType;
/// BeamDeliveryDurationLimit (300a,00c5) vr=FD, vm=1, type=3
DcmFloatingPointDouble BeamDeliveryDurationLimit;
/// BeamDose (300a,0084) vr=DS, vm=1, type=3
DcmDecimalString BeamDose;
/// BeamDoseSpecificationPoint (300a,0082) vr=DS, vm=3, type=3
DcmDecimalString BeamDoseSpecificationPoint;
+ /// BeamDoseType (300a,0090) vr=CS, vm=1, type=1C
+ DcmCodeString BeamDoseType;
/// BeamDoseVerificationControlPointSequence (300a,008c) vr=SQ, vm=1, type=3
DRTBeamDoseVerificationControlPointSequence BeamDoseVerificationControlPointSequence;
/// BeamMeterset (300a,0086) vr=DS, vm=1, type=3
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedCalculatedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRecordedCompensatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTROIContourSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRTDoseROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedDoseReferenceSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedDoseReferenceSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedDoseReferenceSequenceInRTFractionSchemeModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedDoseSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTROIElementalCompositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedFractionGroupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedFrameOfReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRTROIIdentificationCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/ofstd/oflist.h" // for standard list class
#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
#include "dcmtk/dcmrt/seq/drtecs.h" // for EquivalentCodeSequence
+#include "dcmtk/dcmrt/seq/drtsptcs.h" // for SegmentedPropertyTypeModifierCodeSequence
/** Interface class for RTROIIdentificationCodeSequence (3006,0086)
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTEquivalentCodeSequence &getEquivalentCodeSequence() const
{ return EquivalentCodeSequence; }
+ /** get SegmentedPropertyTypeModifierCodeSequence (0062,0011)
+ * @return reference to sequence element
+ */
+ DRTSegmentedPropertyTypeModifierCodeSequence &getSegmentedPropertyTypeModifierCodeSequence()
+ { return SegmentedPropertyTypeModifierCodeSequence; }
+
+ /** get SegmentedPropertyTypeModifierCodeSequence (0062,0011)
+ * @return const reference to sequence element
+ */
+ const DRTSegmentedPropertyTypeModifierCodeSequence &getSegmentedPropertyTypeModifierCodeSequence() const
+ { return SegmentedPropertyTypeModifierCodeSequence; }
+
// --- set DICOM attribute values ---
/** set CodeMeaning (0008,0104)
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
+ /// SegmentedPropertyTypeModifierCodeSequence (0062,0011) vr=SQ, vm=1, type=3
+ DRTSegmentedPropertyTypeModifierCodeSequence SegmentedPropertyTypeModifierCodeSequence;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
DcmUniversalResourceIdentifierOrLocator URNCodeValue;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedInstanceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRecordedLateralSpreadingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedMeasuredDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRangeModulatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRangeModulatorSettingsSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRequestedProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferringPhysicianIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReasonForPerformedProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedPatientPhotoSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTROIPhysicalPropertiesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedPerformedProcedureStepSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedPatientSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedReferenceImageSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedReferenceImageSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedReferenceImageSequenceInRTBrachyApplicationSetupsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRecordedRangeModulatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRTROIObservationsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/ofstd/oflist.h" // for standard list class
#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
-#include "dcmtk/dcmrt/seq/drtarics.h" // for AdditionalRTROIIdentificationCodeSequence
#include "dcmtk/dcmrt/seq/drtrpps.h" // for ROIPhysicalPropertiesSequence
#include "dcmtk/dcmrt/seq/drtrics.h" // for RTROIIdentificationCodeSequence
#include "dcmtk/dcmrt/seq/drtrrs.h" // for RTRelatedROISequence
// --- get DICOM sequence attributes ---
- /** get AdditionalRTROIIdentificationCodeSequence (3006,00b9)
- * @return reference to sequence element
- */
- DRTAdditionalRTROIIdentificationCodeSequence &getAdditionalRTROIIdentificationCodeSequence()
- { return AdditionalRTROIIdentificationCodeSequence; }
-
- /** get AdditionalRTROIIdentificationCodeSequence (3006,00b9)
- * @return const reference to sequence element
- */
- const DRTAdditionalRTROIIdentificationCodeSequence &getAdditionalRTROIIdentificationCodeSequence() const
- { return AdditionalRTROIIdentificationCodeSequence; }
-
/** get ROIPhysicalPropertiesSequence (3006,00b0)
* @return reference to sequence element
*/
/// internal flag used to mark the empty default item
/*const*/ OFBool EmptyDefaultItem;
- /// AdditionalRTROIIdentificationCodeSequence (3006,00b9) vr=SQ, vm=1, type=3
- DRTAdditionalRTROIIdentificationCodeSequence AdditionalRTROIIdentificationCodeSequence;
/// MaterialID (300a,00e1) vr=SH, vm=1, type=3
DcmShortString MaterialID;
/// ObservationNumber (3006,0082) vr=IS, vm=1, type=1
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReasonForRequestedProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRelatedRTROIObservationsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRTRelatedROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRecordedRangeShifterSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedRTPlanSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedRTPlanSequenceInRTGeneralPlanModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedRTPlanSequenceInRTGeneralTreatmentRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedRTPlanSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRequestingServiceCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedSeriesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRTReferencedSeriesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRangeShifterSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRangeShifterSettingsSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedSetupImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRecordedSnoutSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedSOPSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedSpatialRegistrationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedStudySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedStructureSetSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRTReferencedStudySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedTreatmentRecordSequenceInRTDoseModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedTreatmentRecordSequenceInRTGeneralTreatmentRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTReferencedVerificationImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRecordedWedgeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTRealWorldValueMappingSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
// --- get DICOM attribute values ---
+ /** get DoubleFloatRealWorldValueFirstValueMapped (0040,9214)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDoubleFloatRealWorldValueFirstValueMapped(Float64 &value, const unsigned long pos = 0) const;
+
+ /** get DoubleFloatRealWorldValueLastValueMapped (0040,9213)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDoubleFloatRealWorldValueLastValueMapped(Float64 &value, const unsigned long pos = 0) const;
+
/** get LUTExplanation (0028,3003)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
// --- set DICOM attribute values ---
+ /** set DoubleFloatRealWorldValueFirstValueMapped (0040,9214)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDoubleFloatRealWorldValueFirstValueMapped(const Float64 value, const unsigned long pos = 0);
+
+ /** set DoubleFloatRealWorldValueLastValueMapped (0040,9213)
+ * @param value value to be set (should be valid for this VR)
+ * @param pos index of the value to be set (0..vm-1), vm=1
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDoubleFloatRealWorldValueLastValueMapped(const Float64 value, const unsigned long pos = 0);
+
/** set LUTExplanation (0028,3003)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
/// internal flag used to mark the empty default item
/*const*/ OFBool EmptyDefaultItem;
+ /// DoubleFloatRealWorldValueFirstValueMapped (0040,9214) vr=FD, vm=1, type=1C
+ DcmFloatingPointDouble DoubleFloatRealWorldValueFirstValueMapped;
+ /// DoubleFloatRealWorldValueLastValueMapped (0040,9213) vr=FD, vm=1, type=1C
+ DcmFloatingPointDouble DoubleFloatRealWorldValueLastValueMapped;
/// LUTExplanation (0028,3003) vr=LO, vm=1, type=1
DcmLongString LUTExplanation;
/// LUTLabel (0040,9210) vr=SH, vm=1, type=1
DRTMeasurementUnitsCodeSequence MeasurementUnitsCodeSequence;
/// QuantityDefinitionSequence (0040,9220) vr=SQ, vm=1, type=3
DRTQuantityDefinitionSequence QuantityDefinitionSequence;
- /// RealWorldValueFirstValueMapped (0040,9216) vr=US/SS, vm=1, type=1
+ /// RealWorldValueFirstValueMapped (0040,9216) vr=US/SS, vm=1, type=1C
DcmUnsignedShort RealWorldValueFirstValueMapped;
/// RealWorldValueIntercept (0040,9224) vr=FD, vm=1, type=1C
DcmFloatingPointDouble RealWorldValueIntercept;
/// RealWorldValueLUTData (0040,9212) vr=FD, vm=1-n, type=1C
DcmFloatingPointDouble RealWorldValueLUTData;
- /// RealWorldValueLastValueMapped (0040,9211) vr=US/SS, vm=1, type=1
+ /// RealWorldValueLastValueMapped (0040,9211) vr=US/SS, vm=1, type=1C
DcmUnsignedShort RealWorldValueLastValueMapped;
/// RealWorldValueSlope (0040,9225) vr=FD, vm=1, type=1C
DcmFloatingPointDouble RealWorldValueSlope;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTStudiesContainingOtherReferencedInstancesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTStrainCodeSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTSCS_H
+#define DRTSCS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtecs.h" // for EquivalentCodeSequence
+
+
+/** Interface class for StrainCodeSequence (0010,0219)
+ */
+class DCMTK_DCMRT_EXPORT DRTStrainCodeSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get CodeMeaning (0008,0104)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodeMeaning(OFString &value, const signed long pos = 0) const;
+
+ /** get CodeValue (0008,0100)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodeValue(OFString &value, const signed long pos = 0) const;
+
+ /** get CodingSchemeDesignator (0008,0102)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodingSchemeDesignator(OFString &value, const signed long pos = 0) const;
+
+ /** get CodingSchemeVersion (0008,0103)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodingSchemeVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionCreatorUID(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupExtensionFlag (0008,010b)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionFlag(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupLocalVersion (0008,0107)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupLocalVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupVersion (0008,0106)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextIdentifier (0008,010f)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextIdentifier(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextUID (0008,0117)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextUID(OFString &value, const signed long pos = 0) const;
+
+ /** get LongCodeValue (0008,0119)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getLongCodeValue(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResource (0008,0105)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceUID (0008,0118)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceUID(OFString &value, const signed long pos = 0) const;
+
+ /** get URNCodeValue (0008,0120)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getURNCodeValue(OFString &value, const signed long pos = 0) const;
+
+ // --- get DICOM sequence attributes ---
+
+ /** get EquivalentCodeSequence (0008,0121)
+ * @return reference to sequence element
+ */
+ DRTEquivalentCodeSequence &getEquivalentCodeSequence()
+ { return EquivalentCodeSequence; }
+
+ /** get EquivalentCodeSequence (0008,0121)
+ * @return const reference to sequence element
+ */
+ const DRTEquivalentCodeSequence &getEquivalentCodeSequence() const
+ { return EquivalentCodeSequence; }
+
+ // --- set DICOM attribute values ---
+
+ /** set CodeMeaning (0008,0104)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodeMeaning(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodeValue (0008,0100)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodingSchemeDesignator (0008,0102)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodingSchemeDesignator(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodingSchemeVersion (0008,0103)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodingSchemeVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupExtensionFlag (0008,010b)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionFlag(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupLocalVersion (0008,0107)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupLocalVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupVersion (0008,0106)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextIdentifier (0008,010f)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextIdentifier(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextUID (0008,0117)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set LongCodeValue (0008,0119)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setLongCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResource (0008,0105)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceUID (0008,0118)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set URNCodeValue (0008,0120)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UR) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setURNCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// CodeMeaning (0008,0104) vr=LO, vm=1, type=1
+ DcmLongString CodeMeaning;
+ /// CodeValue (0008,0100) vr=SH, vm=1, type=1C
+ DcmShortString CodeValue;
+ /// CodingSchemeDesignator (0008,0102) vr=SH, vm=1, type=1C
+ DcmShortString CodingSchemeDesignator;
+ /// CodingSchemeVersion (0008,0103) vr=SH, vm=1, type=1C
+ DcmShortString CodingSchemeVersion;
+ /// ContextGroupExtensionCreatorUID (0008,010d) vr=UI, vm=1, type=1C
+ DcmUniqueIdentifier ContextGroupExtensionCreatorUID;
+ /// ContextGroupExtensionFlag (0008,010b) vr=CS, vm=1, type=3
+ DcmCodeString ContextGroupExtensionFlag;
+ /// ContextGroupLocalVersion (0008,0107) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupLocalVersion;
+ /// ContextGroupVersion (0008,0106) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupVersion;
+ /// ContextIdentifier (0008,010f) vr=CS, vm=1, type=3
+ DcmCodeString ContextIdentifier;
+ /// ContextUID (0008,0117) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier ContextUID;
+ /// EquivalentCodeSequence (0008,0121) vr=SQ, vm=1, type=3
+ DRTEquivalentCodeSequence EquivalentCodeSequence;
+ /// LongCodeValue (0008,0119) vr=UC, vm=1, type=1C
+ DcmUnlimitedCharacters LongCodeValue;
+ /// MappingResource (0008,0105) vr=CS, vm=1, type=1C
+ DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
+ /// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier MappingResourceUID;
+ /// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
+ DcmUniversalResourceIdentifierOrLocator URNCodeValue;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTStrainCodeSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTStrainCodeSequence(const DRTStrainCodeSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTStrainCodeSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTStrainCodeSequence &operator=(const DRTStrainCodeSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTSeriesDescriptionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTSetupDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTShieldingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTSourceInstanceSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTSINS_H
+#define DRTSINS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtporcs.h" // for PurposeOfReferenceCodeSequence
+
+
+/** Interface class for SourceInstanceSequence (0042,0013)
+ */
+class DCMTK_DCMRT_EXPORT DRTSourceInstanceSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get ReferencedSOPClassUID (0008,1150)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getReferencedSOPClassUID(OFString &value, const signed long pos = 0) const;
+
+ /** get ReferencedSOPInstanceUID (0008,1155)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getReferencedSOPInstanceUID(OFString &value, const signed long pos = 0) const;
+
+ // --- get DICOM sequence attributes ---
+
+ /** get PurposeOfReferenceCodeSequence (0040,a170)
+ * @return reference to sequence element
+ */
+ DRTPurposeOfReferenceCodeSequence &getPurposeOfReferenceCodeSequence()
+ { return PurposeOfReferenceCodeSequence; }
+
+ /** get PurposeOfReferenceCodeSequence (0040,a170)
+ * @return const reference to sequence element
+ */
+ const DRTPurposeOfReferenceCodeSequence &getPurposeOfReferenceCodeSequence() const
+ { return PurposeOfReferenceCodeSequence; }
+
+ // --- set DICOM attribute values ---
+
+ /** set ReferencedSOPClassUID (0008,1150)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setReferencedSOPClassUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ReferencedSOPInstanceUID (0008,1155)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setReferencedSOPInstanceUID(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// PurposeOfReferenceCodeSequence (0040,a170) vr=SQ, vm=1, type=3
+ DRTPurposeOfReferenceCodeSequence PurposeOfReferenceCodeSequence;
+ /// ReferencedSOPClassUID (0008,1150) vr=UI, vm=1, type=1
+ DcmUniqueIdentifier ReferencedSOPClassUID;
+ /// ReferencedSOPInstanceUID (0008,1155) vr=UI, vm=1, type=1
+ DcmUniqueIdentifier ReferencedSOPInstanceUID;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTSourceInstanceSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTSourceInstanceSequence(const DRTSourceInstanceSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTSourceInstanceSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTSourceInstanceSequence &operator=(const DRTSourceInstanceSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTSourceImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTSnoutSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTSegmentedPropertyCategoryCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTScheduledProtocolCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*/
OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
/** get MappingResourceUID (0008,0118)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
*/
OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
/** set MappingResourceUID (0008,0118)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
DcmUnlimitedCharacters LongCodeValue;
/// MappingResource (0008,0105) vr=CS, vm=1, type=1C
DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
/// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
DcmUniqueIdentifier MappingResourceUID;
/// ProtocolContextSequence (0040,0440) vr=SQ, vm=1, type=3
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTSourcePatientGroupIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTSPGIS_H
+#define DRTSPGIS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtipiqs.h" // for IssuerOfPatientIDQualifiersSequence
+
+
+/** Interface class for SourcePatientGroupIdentificationSequence (0010,0026)
+ */
+class DCMTK_DCMRT_EXPORT DRTSourcePatientGroupIdentificationSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get IssuerOfPatientID (0010,0021)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getIssuerOfPatientID(OFString &value, const signed long pos = 0) const;
+
+ /** get PatientID (0010,0020)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getPatientID(OFString &value, const signed long pos = 0) const;
+
+ // --- get DICOM sequence attributes ---
+
+ /** get IssuerOfPatientIDQualifiersSequence (0010,0024)
+ * @return reference to sequence element
+ */
+ DRTIssuerOfPatientIDQualifiersSequence &getIssuerOfPatientIDQualifiersSequence()
+ { return IssuerOfPatientIDQualifiersSequence; }
+
+ /** get IssuerOfPatientIDQualifiersSequence (0010,0024)
+ * @return const reference to sequence element
+ */
+ const DRTIssuerOfPatientIDQualifiersSequence &getIssuerOfPatientIDQualifiersSequence() const
+ { return IssuerOfPatientIDQualifiersSequence; }
+
+ // --- set DICOM attribute values ---
+
+ /** set IssuerOfPatientID (0010,0021)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setIssuerOfPatientID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set PatientID (0010,0020)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setPatientID(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// IssuerOfPatientID (0010,0021) vr=LO, vm=1, type=3
+ DcmLongString IssuerOfPatientID;
+ /// IssuerOfPatientIDQualifiersSequence (0010,0024) vr=SQ, vm=1, type=3
+ DRTIssuerOfPatientIDQualifiersSequence IssuerOfPatientIDQualifiersSequence;
+ /// PatientID (0010,0020) vr=LO, vm=1, type=1
+ DcmLongString PatientID;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTSourcePatientGroupIdentificationSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTSourcePatientGroupIdentificationSequence(const DRTSourcePatientGroupIdentificationSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTSourcePatientGroupIdentificationSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTSourcePatientGroupIdentificationSequence &operator=(const DRTSourcePatientGroupIdentificationSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTSegmentedPropertyTypeModifierCodeSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTSPTCS_H
+#define DRTSPTCS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtecs.h" // for EquivalentCodeSequence
+
+
+/** Interface class for SegmentedPropertyTypeModifierCodeSequence (0062,0011)
+ */
+class DCMTK_DCMRT_EXPORT DRTSegmentedPropertyTypeModifierCodeSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get CodeMeaning (0008,0104)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodeMeaning(OFString &value, const signed long pos = 0) const;
+
+ /** get CodeValue (0008,0100)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodeValue(OFString &value, const signed long pos = 0) const;
+
+ /** get CodingSchemeDesignator (0008,0102)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodingSchemeDesignator(OFString &value, const signed long pos = 0) const;
+
+ /** get CodingSchemeVersion (0008,0103)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodingSchemeVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionCreatorUID(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupExtensionFlag (0008,010b)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionFlag(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupLocalVersion (0008,0107)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupLocalVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupVersion (0008,0106)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextIdentifier (0008,010f)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextIdentifier(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextUID (0008,0117)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextUID(OFString &value, const signed long pos = 0) const;
+
+ /** get LongCodeValue (0008,0119)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getLongCodeValue(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResource (0008,0105)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceUID (0008,0118)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceUID(OFString &value, const signed long pos = 0) const;
+
+ /** get URNCodeValue (0008,0120)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getURNCodeValue(OFString &value, const signed long pos = 0) const;
+
+ // --- get DICOM sequence attributes ---
+
+ /** get EquivalentCodeSequence (0008,0121)
+ * @return reference to sequence element
+ */
+ DRTEquivalentCodeSequence &getEquivalentCodeSequence()
+ { return EquivalentCodeSequence; }
+
+ /** get EquivalentCodeSequence (0008,0121)
+ * @return const reference to sequence element
+ */
+ const DRTEquivalentCodeSequence &getEquivalentCodeSequence() const
+ { return EquivalentCodeSequence; }
+
+ // --- set DICOM attribute values ---
+
+ /** set CodeMeaning (0008,0104)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodeMeaning(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodeValue (0008,0100)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodingSchemeDesignator (0008,0102)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodingSchemeDesignator(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodingSchemeVersion (0008,0103)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodingSchemeVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupExtensionFlag (0008,010b)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionFlag(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupLocalVersion (0008,0107)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupLocalVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupVersion (0008,0106)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextIdentifier (0008,010f)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextIdentifier(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextUID (0008,0117)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set LongCodeValue (0008,0119)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setLongCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResource (0008,0105)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceUID (0008,0118)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set URNCodeValue (0008,0120)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UR) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setURNCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// CodeMeaning (0008,0104) vr=LO, vm=1, type=1
+ DcmLongString CodeMeaning;
+ /// CodeValue (0008,0100) vr=SH, vm=1, type=1C
+ DcmShortString CodeValue;
+ /// CodingSchemeDesignator (0008,0102) vr=SH, vm=1, type=1C
+ DcmShortString CodingSchemeDesignator;
+ /// CodingSchemeVersion (0008,0103) vr=SH, vm=1, type=1C
+ DcmShortString CodingSchemeVersion;
+ /// ContextGroupExtensionCreatorUID (0008,010d) vr=UI, vm=1, type=1C
+ DcmUniqueIdentifier ContextGroupExtensionCreatorUID;
+ /// ContextGroupExtensionFlag (0008,010b) vr=CS, vm=1, type=3
+ DcmCodeString ContextGroupExtensionFlag;
+ /// ContextGroupLocalVersion (0008,0107) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupLocalVersion;
+ /// ContextGroupVersion (0008,0106) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupVersion;
+ /// ContextIdentifier (0008,010f) vr=CS, vm=1, type=3
+ DcmCodeString ContextIdentifier;
+ /// ContextUID (0008,0117) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier ContextUID;
+ /// EquivalentCodeSequence (0008,0121) vr=SQ, vm=1, type=3
+ DRTEquivalentCodeSequence EquivalentCodeSequence;
+ /// LongCodeValue (0008,0119) vr=UC, vm=1, type=1C
+ DcmUnlimitedCharacters LongCodeValue;
+ /// MappingResource (0008,0105) vr=CS, vm=1, type=1C
+ DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
+ /// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier MappingResourceUID;
+ /// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
+ DcmUniversalResourceIdentifierOrLocator URNCodeValue;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTSegmentedPropertyTypeModifierCodeSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTSegmentedPropertyTypeModifierCodeSequence(const DRTSegmentedPropertyTypeModifierCodeSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTSegmentedPropertyTypeModifierCodeSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTSegmentedPropertyTypeModifierCodeSequence &operator=(const DRTSegmentedPropertyTypeModifierCodeSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTSourceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTStrainSourceRegistryCodeSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTSSRCS_H
+#define DRTSSRCS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtecs.h" // for EquivalentCodeSequence
+
+
+/** Interface class for StrainSourceRegistryCodeSequence (0010,0215)
+ */
+class DCMTK_DCMRT_EXPORT DRTStrainSourceRegistryCodeSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get CodeMeaning (0008,0104)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodeMeaning(OFString &value, const signed long pos = 0) const;
+
+ /** get CodeValue (0008,0100)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodeValue(OFString &value, const signed long pos = 0) const;
+
+ /** get CodingSchemeDesignator (0008,0102)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodingSchemeDesignator(OFString &value, const signed long pos = 0) const;
+
+ /** get CodingSchemeVersion (0008,0103)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCodingSchemeVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionCreatorUID(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupExtensionFlag (0008,010b)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupExtensionFlag(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupLocalVersion (0008,0107)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupLocalVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextGroupVersion (0008,0106)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextGroupVersion(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextIdentifier (0008,010f)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextIdentifier(OFString &value, const signed long pos = 0) const;
+
+ /** get ContextUID (0008,0117)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getContextUID(OFString &value, const signed long pos = 0) const;
+
+ /** get LongCodeValue (0008,0119)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getLongCodeValue(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResource (0008,0105)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResource(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceName (0008,0122)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceName(OFString &value, const signed long pos = 0) const;
+
+ /** get MappingResourceUID (0008,0118)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getMappingResourceUID(OFString &value, const signed long pos = 0) const;
+
+ /** get URNCodeValue (0008,0120)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getURNCodeValue(OFString &value, const signed long pos = 0) const;
+
+ // --- get DICOM sequence attributes ---
+
+ /** get EquivalentCodeSequence (0008,0121)
+ * @return reference to sequence element
+ */
+ DRTEquivalentCodeSequence &getEquivalentCodeSequence()
+ { return EquivalentCodeSequence; }
+
+ /** get EquivalentCodeSequence (0008,0121)
+ * @return const reference to sequence element
+ */
+ const DRTEquivalentCodeSequence &getEquivalentCodeSequence() const
+ { return EquivalentCodeSequence; }
+
+ // --- set DICOM attribute values ---
+
+ /** set CodeMeaning (0008,0104)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodeMeaning(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodeValue (0008,0100)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodingSchemeDesignator (0008,0102)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodingSchemeDesignator(const OFString &value, const OFBool check = OFTrue);
+
+ /** set CodingSchemeVersion (0008,0103)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (SH) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setCodingSchemeVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupExtensionCreatorUID (0008,010d)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupExtensionFlag (0008,010b)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupExtensionFlag(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupLocalVersion (0008,0107)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupLocalVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextGroupVersion (0008,0106)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (DT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextGroupVersion(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextIdentifier (0008,010f)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextIdentifier(const OFString &value, const OFBool check = OFTrue);
+
+ /** set ContextUID (0008,0117)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setContextUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set LongCodeValue (0008,0119)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UC) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setLongCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResource (0008,0105)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResource(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceName (0008,0122)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceName(const OFString &value, const OFBool check = OFTrue);
+
+ /** set MappingResourceUID (0008,0118)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UI) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setMappingResourceUID(const OFString &value, const OFBool check = OFTrue);
+
+ /** set URNCodeValue (0008,0120)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UR) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setURNCodeValue(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// CodeMeaning (0008,0104) vr=LO, vm=1, type=1
+ DcmLongString CodeMeaning;
+ /// CodeValue (0008,0100) vr=SH, vm=1, type=1C
+ DcmShortString CodeValue;
+ /// CodingSchemeDesignator (0008,0102) vr=SH, vm=1, type=1C
+ DcmShortString CodingSchemeDesignator;
+ /// CodingSchemeVersion (0008,0103) vr=SH, vm=1, type=1C
+ DcmShortString CodingSchemeVersion;
+ /// ContextGroupExtensionCreatorUID (0008,010d) vr=UI, vm=1, type=1C
+ DcmUniqueIdentifier ContextGroupExtensionCreatorUID;
+ /// ContextGroupExtensionFlag (0008,010b) vr=CS, vm=1, type=3
+ DcmCodeString ContextGroupExtensionFlag;
+ /// ContextGroupLocalVersion (0008,0107) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupLocalVersion;
+ /// ContextGroupVersion (0008,0106) vr=DT, vm=1, type=1C
+ DcmDateTime ContextGroupVersion;
+ /// ContextIdentifier (0008,010f) vr=CS, vm=1, type=3
+ DcmCodeString ContextIdentifier;
+ /// ContextUID (0008,0117) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier ContextUID;
+ /// EquivalentCodeSequence (0008,0121) vr=SQ, vm=1, type=3
+ DRTEquivalentCodeSequence EquivalentCodeSequence;
+ /// LongCodeValue (0008,0119) vr=UC, vm=1, type=1C
+ DcmUnlimitedCharacters LongCodeValue;
+ /// MappingResource (0008,0105) vr=CS, vm=1, type=1C
+ DcmCodeString MappingResource;
+ /// MappingResourceName (0008,0122) vr=LO, vm=1, type=3
+ DcmLongString MappingResourceName;
+ /// MappingResourceUID (0008,0118) vr=UI, vm=1, type=3
+ DcmUniqueIdentifier MappingResourceUID;
+ /// URNCodeValue (0008,0120) vr=UR, vm=1, type=1C
+ DcmUniversalResourceIdentifierOrLocator URNCodeValue;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTStrainSourceRegistryCodeSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTStrainSourceRegistryCodeSequence(const DRTStrainSourceRegistryCodeSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTStrainSourceRegistryCodeSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTStrainSourceRegistryCodeSequence &operator=(const DRTStrainSourceRegistryCodeSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTStructureSetROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTStrainStockSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTSSS_H
+#define DRTSSS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+#include "dcmtk/dcmrt/seq/drtssrcs.h" // for StrainSourceRegistryCodeSequence
+
+
+/** Interface class for StrainStockSequence (0010,0216)
+ */
+class DCMTK_DCMRT_EXPORT DRTStrainStockSequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get StrainSource (0010,0217)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getStrainSource(OFString &value, const signed long pos = 0) const;
+
+ /** get StrainStockNumber (0010,0214)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getStrainStockNumber(OFString &value, const signed long pos = 0) const;
+
+ // --- get DICOM sequence attributes ---
+
+ /** get StrainSourceRegistryCodeSequence (0010,0215)
+ * @return reference to sequence element
+ */
+ DRTStrainSourceRegistryCodeSequence &getStrainSourceRegistryCodeSequence()
+ { return StrainSourceRegistryCodeSequence; }
+
+ /** get StrainSourceRegistryCodeSequence (0010,0215)
+ * @return const reference to sequence element
+ */
+ const DRTStrainSourceRegistryCodeSequence &getStrainSourceRegistryCodeSequence() const
+ { return StrainSourceRegistryCodeSequence; }
+
+ // --- set DICOM attribute values ---
+
+ /** set StrainSource (0010,0217)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setStrainSource(const OFString &value, const OFBool check = OFTrue);
+
+ /** set StrainStockNumber (0010,0214)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setStrainStockNumber(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// StrainSource (0010,0217) vr=LO, vm=1, type=1
+ DcmLongString StrainSource;
+ /// StrainSourceRegistryCodeSequence (0010,0215) vr=SQ, vm=1, type=1
+ DRTStrainSourceRegistryCodeSequence StrainSourceRegistryCodeSequence;
+ /// StrainStockNumber (0010,0214) vr=LO, vm=1, type=1
+ DcmLongString StrainStockNumber;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTStrainStockSequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTStrainStockSequence(const DRTStrainStockSequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTStrainStockSequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTStrainStockSequence &operator=(const DRTStrainStockSequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTTreatmentMachineSequenceInRTTreatmentMachineRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTTreatmentMachineSequenceInRTBrachyApplicationSetupsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTTreatmentSummaryCalculatedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTTreatmentSessionIonBeamSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
#include "dcmtk/dcmrt/seq/drtas7.h" // for ApplicatorSequence
#include "dcmtk/dcmrt/seq/drtbldls.h" // for BeamLimitingDeviceLeafPairsSequence
+#include "dcmtk/dcmrt/seq/drtdddps.h" // for DeliveredDepthDoseParametersSequence
#include "dcmtk/dcmrt/seq/drtgas.h" // for GeneralAccessorySequence
#include "dcmtk/dcmrt/seq/drticpds.h" // for IonControlPointDeliverySequence
#include "dcmtk/dcmrt/seq/drtrbls.h" // for RecordedBlockSequence
*/
OFCondition getDeliveredTreatmentTime(Float64 &value, const unsigned long pos = 0) const;
+ /** get FixationEye (300a,0150)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getFixationEye(OFString &value, const signed long pos = 0) const;
+
/** get FixationLightAzimuthalAngle (300a,0356)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1)
*/
OFCondition getFixationLightPolarAngle(Float32 &value, const unsigned long pos = 0) const;
+ /** get ModulatedScanModeType (300a,0309)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getModulatedScanModeType(OFString &value, const signed long pos = 0) const;
+
/** get NumberOfBlocks (300a,00f0)
* @param value reference to variable in which the value should be stored
* @param pos index of the value to get (0..vm-1), -1 for all components
const DRTBeamLimitingDeviceLeafPairsSequence &getBeamLimitingDeviceLeafPairsSequence() const
{ return BeamLimitingDeviceLeafPairsSequence; }
+ /** get DeliveredDepthDoseParametersSequence (300a,0506)
+ * @return reference to sequence element
+ */
+ DRTDeliveredDepthDoseParametersSequence &getDeliveredDepthDoseParametersSequence()
+ { return DeliveredDepthDoseParametersSequence; }
+
+ /** get DeliveredDepthDoseParametersSequence (300a,0506)
+ * @return const reference to sequence element
+ */
+ const DRTDeliveredDepthDoseParametersSequence &getDeliveredDepthDoseParametersSequence() const
+ { return DeliveredDepthDoseParametersSequence; }
+
/** get GeneralAccessorySequence (300a,0420)
* @return reference to sequence element
*/
*/
OFCondition setDeliveredTreatmentTime(const OFString &value, const OFBool check = OFTrue);
+ /** set FixationEye (300a,0150)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setFixationEye(const OFString &value, const OFBool check = OFTrue);
+
/** set FixationLightAzimuthalAngle (300a,0356)
* @param value value to be set (should be valid for this VR)
* @param pos index of the value to be set (0..vm-1), vm=1
*/
OFCondition setFixationLightPolarAngle(const Float32 value, const unsigned long pos = 0);
+ /** set ModulatedScanModeType (300a,0309)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (CS) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setModulatedScanModeType(const OFString &value, const OFBool check = OFTrue);
+
/** set NumberOfBlocks (300a,00f0)
* @param value value to be set (single value only) or "" for no value
* @param check check 'value' for conformance with VR (IS) and VM (1) if enabled
DcmCodeString BeamType;
/// CurrentFractionNumber (3008,0022) vr=IS, vm=1, type=2
DcmIntegerString CurrentFractionNumber;
+ /// DeliveredDepthDoseParametersSequence (300a,0506) vr=SQ, vm=1, type=3
+ DRTDeliveredDepthDoseParametersSequence DeliveredDepthDoseParametersSequence;
/// DeliveredPrimaryMeterset (3008,0036) vr=DS, vm=1, type=3
DcmDecimalString DeliveredPrimaryMeterset;
/// DeliveredSecondaryMeterset (3008,0037) vr=DS, vm=1, type=3
DcmDecimalString DeliveredSecondaryMeterset;
/// DeliveredTreatmentTime (3008,003b) vr=DS, vm=1, type=3
DcmDecimalString DeliveredTreatmentTime;
+ /// FixationEye (300a,0150) vr=CS, vm=1, type=3
+ DcmCodeString FixationEye;
/// FixationLightAzimuthalAngle (300a,0356) vr=FL, vm=1, type=3
DcmFloatingPointSingle FixationLightAzimuthalAngle;
/// FixationLightPolarAngle (300a,0358) vr=FL, vm=1, type=3
DRTGeneralAccessorySequence GeneralAccessorySequence;
/// IonControlPointDeliverySequence (3008,0041) vr=SQ, vm=1, type=1
DRTIonControlPointDeliverySequence IonControlPointDeliverySequence;
+ /// ModulatedScanModeType (300a,0309) vr=CS, vm=1, type=1C
+ DcmCodeString ModulatedScanModeType;
/// NumberOfBlocks (300a,00f0) vr=IS, vm=1, type=1
DcmIntegerString NumberOfBlocks;
/// NumberOfBoli (300a,00ed) vr=IS, vm=1, type=1
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTTreatmentSummaryMeasuredDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTToleranceTableSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Header file for class DRTUDISequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#ifndef DRTUDIS_H
+#define DRTUDIS_H
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/ofstd/oflist.h" // for standard list class
+#include "dcmtk/dcmrt/drttypes.h" // module-specific helper class
+
+
+/** Interface class for UDISequence (0018,100a)
+ */
+class DCMTK_DCMRT_EXPORT DRTUDISequence
+ : protected DRTTypes
+{
+
+ public:
+
+ /** Item class
+ */
+ class DCMTK_DCMRT_EXPORT Item
+ : protected DRTTypes
+ {
+
+ public:
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultItem flag used to mark the empty default item
+ */
+ Item(const OFBool emptyDefaultItem = OFFalse);
+
+ /** copy constructor
+ * @param copy item object to be copied
+ */
+ Item(const Item ©);
+
+ /** destructor
+ */
+ virtual ~Item();
+
+ /** assigment operator
+ * @param copy item object to be copied
+ */
+ Item &operator=(const Item ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if item is empty
+ * @return OFTrue if item is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if item is valid, i.e.\ not the empty default item
+ * @return OFTrue if item is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ // --- input/output methods ---
+
+ /** read elements from sequence item
+ * @param item reference to DICOM sequence item from which the elements should be read
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &item);
+
+ /** write elements to sequence item
+ * @param item reference to DICOM sequence item to which the elements should be written
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &item);
+
+ // --- get DICOM attribute values ---
+
+ /** get DeviceDescription (0050,0020)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getDeviceDescription(OFString &value, const signed long pos = 0) const;
+
+ /** get UniqueDeviceIdentifier (0018,1009)
+ * @param value reference to variable in which the value should be stored
+ * @param pos index of the value to get (0..vm-1), -1 for all components
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getUniqueDeviceIdentifier(OFString &value, const signed long pos = 0) const;
+
+ // --- set DICOM attribute values ---
+
+ /** set DeviceDescription (0050,0020)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (LO) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setDeviceDescription(const OFString &value, const OFBool check = OFTrue);
+
+ /** set UniqueDeviceIdentifier (0018,1009)
+ * @param value value to be set (single value only) or "" for no value
+ * @param check check 'value' for conformance with VR (UT) and VM (1) if enabled
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition setUniqueDeviceIdentifier(const OFString &value, const OFBool check = OFTrue);
+
+ private:
+
+ /// internal flag used to mark the empty default item
+ /*const*/ OFBool EmptyDefaultItem;
+
+ /// DeviceDescription (0050,0020) vr=LO, vm=1, type=3
+ DcmLongString DeviceDescription;
+ /// UniqueDeviceIdentifier (0018,1009) vr=UT, vm=1, type=1
+ DcmUnlimitedText UniqueDeviceIdentifier;
+
+ };
+
+ // --- constructors, destructor and operators ---
+
+ /** (default) constructor
+ * @param emptyDefaultSequence internal flag used to mark the empty default sequence
+ */
+ DRTUDISequence(const OFBool emptyDefaultSequence = OFFalse);
+
+ /** copy constructor
+ * @param copy sequence object to be copied
+ */
+ DRTUDISequence(const DRTUDISequence ©);
+
+ /** destructor
+ */
+ virtual ~DRTUDISequence();
+
+ /** assigment operator
+ * @param copy sequence object to be copied
+ */
+ DRTUDISequence &operator=(const DRTUDISequence ©);
+
+ // --- general methods ---
+
+ /** clear all internal member variables
+ */
+ void clear();
+
+ /** check if sequence is empty
+ * @return OFTrue if sequence is empty, OFFalse otherwise
+ */
+ OFBool isEmpty();
+
+ /** check if sequence is valid, i.e.\ not the empty default sequence
+ * @return OFTrue if sequence is valid, OFFalse otherwise
+ */
+ OFBool isValid() const;
+
+ /** get number of items in the sequence
+ * @return number of items
+ */
+ unsigned long getNumberOfItems() const;
+
+ /** goto first item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoFirstItem();
+
+ /** goto next item in the sequence
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoNextItem();
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num);
+
+ /** get current item in the sequence
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getCurrentItem(Item *&item) const;
+
+ /** get current item in the sequence
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getCurrentItem();
+
+ /** get current item in the sequence
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getCurrentItem() const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @param item reference to item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItem(const unsigned long num, Item *&item);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &getItem(const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &getItem(const unsigned long num) const;
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return reference to specified item if successful, empty default item otherwise
+ */
+ Item &operator[](const unsigned long num);
+
+ /** get particular item in the sequence
+ * @param num number of the item to be retrieved (0..num-1)
+ * @return const reference to specified item if successful, empty default item otherwise
+ */
+ const Item &operator[](const unsigned long num) const;
+
+ /** add new item to the end of this sequence
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition addItem(Item *&item);
+
+ /** insert new item into the sequence
+ * @param pos position where the new item is to be inserted (0..num)
+ * @param item reference to new item pointer (result variable)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition insertItem(const unsigned long pos, Item *&item);
+
+ /** remove particular item from the sequence
+ * @param pos position of the item to be removed (0..num-1)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition removeItem(const unsigned long pos);
+
+ // --- input/output methods ---
+
+ /** read sequence of items from dataset
+ * @param dataset reference to DICOM dataset from which the sequence should be read
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "1C", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ /** write sequence of items to dataset
+ * @param dataset reference to DICOM dataset to which the sequence should be written
+ * @param card cardinality (valid range for number of items)
+ * @param type value type (valid value: "1", "2" or something else which is not checked)
+ * @param moduleName optional module/sequence name to be printed (default: "RT object" if NULL)
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName = NULL);
+
+ protected:
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListIterator(Item *) &iterator);
+
+ /** goto particular item in the sequence
+ * @param num number of the item to be selected (0..num-1)
+ * @param iterator list iterator storing the position of the item
+ * @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition gotoItem(const unsigned long num,
+ OFListConstIterator(Item *) &iterator) const;
+
+ private:
+
+ /// internal flag used to mark the empty default sequence
+ /*const*/ OFBool EmptyDefaultSequence;
+
+ /// list of items in this sequence
+ OFList<Item *> SequenceOfItems;
+ /// currently selected item
+ OFListIterator(Item *) CurrentItem;
+ /// empty default item
+ Item EmptyItem;
+
+};
+
+
+#endif
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTVOILUTSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTWedgePositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTWADORetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTWADORSRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTWedgeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class DRTXDSRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
# create library from source files
-DCMTK_ADD_LIBRARY(dcmrt drtdose drtimage drtplan drtstrct drttreat drtionpl drtiontr drmdose drmimage drmplan drmstrct drttypes drtaadcs drtadcs drtads drtafs drtags drtajcs drtarics drtas1 drtas5 drtas6 drtas7 drtass drtbads drtbas drtbcps drtbl2 drtbl5 drtbldls drtbldps drtblds1 drtblds5 drtblds6 drtbldts drtbrcss drtbrdrs drtbrs drtbs drtbss drtbvcps drtcbars drtccs drtcctus drtcdrs drtces drtchs drtcims drtcis drtcncs drtcos drtcpas drtcpis drtcps drtcsas drtcs drtcshs drtcsis drtcss drtdcs drtdias drtdimcs drtdimrs drtdirs drtdrs drtds drtdspcs drtdss drtdvhs drtdvrrs drteas drtecs drtes drtfds drtfes drtfgs drtfgss drtfms drtfsss drtgas drthsdrs drtiais drtians drtiblds drtibls drtibs drticpds drticps drtics drtiis drtipiqs drtircs drtiseis drtitts drtiwps drtiws drtlsds6 drtlsds7 drtlsds drtmacds drtmas drtmdrs drtmls drtmps drtmss drtmucs drtoas drtois drtopis drtos drtpbcs drtpcs drtpcxs drtpdecs drtpfms drtpics drtporcs drtporis drtppcs drtprsis drtpscs drtpsics drtpss drtpsss drtpvis drtqds drtras drtrbas2 drtrbas8 drtrbls drtrbos1 drtrbos6 drtrbos7 drtrbs2 drtrbs4 drtrbs8 drtrcdrs drtrcos drtrcps drtrcs drtrdros drtrdrs1 drtrdrs6 drtrdrs8 drtrds drtrecs drtrfgs drtrfors drtrics drtrims drtris drtrlsds drtrmdrs drtrms drtrmss6 drtrmss7 drtrpcs drtrpis drtrppcs drtrpphs drtrpps drtrppss drtrps drtrris1 drtrris6 drtrris9 drtrrms drtrros drtrrpcs drtrrros drtrrs drtrrshs drtrrtps3 drtrrtps4 drtrrtps5 drtrrtps drtrscs drtrsers drtrses drtrshs6 drtrshs7 drtrshs drtrsis drtrsns drtrsos drtrsrs drtrss drtrsss drtrsts drtrtrs2 drtrtrs4 drtrvis drtwrsrs drtrws drtrwvms drtscris drtsdcs drtsds drtshds drtsis drtsns drtspccs drtspcs drtss drtssrs drttms0 drttms9 drttscds drttsibs drttsmds drttts drtvls drtwps drtwrs drtws drtxrs)
+DCMTK_ADD_LIBRARY(dcmrt drtdose drtimage drtplan drtstrct drttreat drtionpl drtiontr drmdose drmimage drmplan drmstrct drttypes drtaadcs drtadcs drtads drtafs drtags drtajcs drtas1 drtas5 drtas6 drtas7 drtass drtbads drtbas drtbcps drtbl2 drtbl5 drtbldls drtbldps drtblds1 drtblds5 drtblds6 drtbldts drtbrcss drtbrdrs drtbrs drtbs drtbss drtbvcps drtcbars drtccs drtcctus drtcdrs drtces drtcgis drtchs drtcims drtcis drtcncs drtcos drtcpas drtcpis drtcps drtcsas drtcs drtcshs drtcsis drtcss drtdcs drtdddps drtddps drtdias drtdimcs drtdimrs drtdirs drtdrs drtds drtdspcs drtdss drtdvhs drtdvrrs drteas drtecs drtes drtfds drtfes drtfgs drtfgss drtfms drtfsss drtgas drtgpis drthsdrs drtiais drtians drtiblds drtibls drtibs drticpds drticps drtics drtiis drtipiqs drtircs drtiseis drtitts drtiwps drtiws drtlsds6 drtlsds7 drtlsds drtmacds drtmas drtmdrs drtmls drtmps drtmris drtmss drtmucs drtoas drtois drtopis drtos drtpbcs drtpcs drtpcxs drtpdecs drtpdeds drtpfms drtpics drtporcs drtporis drtppcs drtprsis drtpscs drtpsics drtpss drtpsss drtpvis drtqds drtras drtrbas2 drtrbas8 drtrbls drtrbos1 drtrbos6 drtrbos7 drtrbs2 drtrbs4 drtrbs8 drtrcdrs drtrcos drtrcps drtrcs drtrdros drtrdrs1 drtrdrs6 drtrdrs8 drtrds drtrecs drtrfgs drtrfors drtrics drtrims drtris drtrlsds drtrmdrs drtrms drtrmss6 drtrmss7 drtrpcs drtrpis drtrppcs drtrpphs drtrpps drtrppss drtrps drtrris1 drtrris6 drtrris9 drtrrms drtrros drtrrpcs drtrrros drtrrs drtrrshs drtrrtps3 drtrrtps4 drtrrtps5 drtrrtps drtrscs drtrsers drtrses drtrshs6 drtrshs7 drtrshs drtrsis drtrsns drtrsos drtrsrs drtrss drtrsss drtrsts drtrtrs2 drtrtrs4 drtrvis drtwrsrs drtrws drtrwvms drtscris drtscs drtsdcs drtsds drtshds drtsins drtsis drtsns drtspccs drtspcs drtspgis drtsptcs drtss drtssrcs drtssrs drtsss drttms0 drttms9 drttscds drttsibs drttsmds drttts drtudis drtvls drtwps drtwrs drtws drtxrs)
DCMTK_TARGET_LINK_MODULES(dcmrt ofstd oflog dcmdata dcmimgle)
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfes.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmls.h \
- ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
- ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtmls.h ../include/dcmtk/dcmrt/seq/drtoas.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h \
../include/dcmtk/dcmrt/seq/drtpsics.h \
../include/dcmtk/dcmrt/seq/drtpscs.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpsss.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrcs.h ../include/dcmtk/dcmrt/seq/drtcs.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h ../include/dcmtk/dcmrt/seq/drtrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h \
../include/dcmtk/dcmrt/seq/drtrdros.h \
../include/dcmtk/dcmrt/seq/drtrwvms.h \
../include/dcmtk/dcmrt/seq/drtqds.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
../include/dcmtk/dcmrt/seq/drtrfors.h \
../include/dcmtk/dcmrt/seq/drtrsts.h \
- ../include/dcmtk/dcmrt/seq/drtrses.h \
- ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../include/dcmtk/dcmrt/seq/drtssrs.h \
../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h \
../../ofstd/include/dcmtk/ofstd/ofbmanip.h
drmimage.o: drmimage.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/drmimage.h ../include/dcmtk/dcmrt/drtimage.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h \
../include/dcmtk/dcmrt/seq/drtcbars.h \
../include/dcmtk/dcmrt/seq/drtads.h ../include/dcmtk/dcmrt/seq/drtbas.h \
../include/dcmtk/dcmrt/seq/drtces.h ../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtblds5.h \
../include/dcmtk/dcmrt/seq/drtbl5.h ../include/dcmtk/dcmrt/seq/drtgas.h \
../include/dcmtk/dcmrt/seq/drtpfms.h ../include/dcmtk/dcmrt/seq/drtfms.h \
- ../include/dcmtk/dcmrt/seq/drtfes.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtfes.h ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmls.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtmls.h \
../include/dcmtk/dcmrt/seq/drtmacds.h \
../include/dcmtk/dcmrt/seq/drtcss.h ../include/dcmtk/dcmrt/seq/drtoas.h \
../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtporis.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
../include/dcmtk/dcmrt/seq/drtrwvms.h \
../include/dcmtk/dcmrt/seq/drtqds.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../include/dcmtk/dcmrt/seq/drtscris.h \
- ../include/dcmtk/dcmrt/seq/drtvls.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h ../include/dcmtk/dcmrt/seq/drtvls.h \
../../dcmimgle/include/dcmtk/dcmimgle/dcmimage.h \
../../dcmimgle/include/dcmtk/dcmimgle/dimoimg.h \
../../dcmimgle/include/dcmtk/dcmimgle/diimage.h \
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
../include/dcmtk/dcmrt/seq/drtdrs.h ../include/dcmtk/dcmrt/seq/drteas.h \
../include/dcmtk/dcmrt/seq/drtfgs.h ../include/dcmtk/dcmrt/seq/drtrbs8.h \
../include/dcmtk/dcmrt/seq/drtbvcps.h \
../include/dcmtk/dcmrt/seq/drtrbas8.h \
../include/dcmtk/dcmrt/seq/drtrdrs8.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
../include/dcmtk/dcmrt/seq/drtporis.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrppss.h \
../include/dcmtk/dcmrt/seq/drtrrtps3.h \
../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrsss.h \
- ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
- ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrsss.h ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
../include/dcmtk/dcmrt/seq/drtrrpcs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtss.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h ../include/dcmtk/dcmrt/seq/drtss.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../include/dcmtk/dcmrt/seq/drtscris.h \
../include/dcmtk/dcmrt/seq/drttts.h \
../include/dcmtk/dcmrt/seq/drtbldts.h \
- ../include/dcmtk/dcmrt/seq/drttms9.h ../include/dcmtk/dcmrt/drmsrch.h
+ ../include/dcmtk/dcmrt/seq/drttms9.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h ../include/dcmtk/dcmrt/drmsrch.h
drmstrct.o: drmstrct.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/drmstrct.h ../include/dcmtk/dcmrt/drtstrct.h \
../include/dcmtk/dcmrt/drttypes.h \
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drteas.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h \
../include/dcmtk/dcmrt/seq/drtpsics.h \
../include/dcmtk/dcmrt/seq/drtpscs.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpsss.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrcs.h ../include/dcmtk/dcmrt/seq/drtcs.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h ../include/dcmtk/dcmrt/seq/drtrros.h \
- ../include/dcmtk/dcmrt/seq/drtarics.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h ../include/dcmtk/dcmrt/seq/drtrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h \
+ ../include/dcmtk/dcmrt/seq/drtrros.h \
../include/dcmtk/dcmrt/seq/drtrpps.h \
../include/dcmtk/dcmrt/seq/drtrecs.h \
- ../include/dcmtk/dcmrt/seq/drtrics.h ../include/dcmtk/dcmrt/seq/drtrrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrics.h \
+ ../include/dcmtk/dcmrt/seq/drtsptcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrrs.h \
../include/dcmtk/dcmrt/seq/drtrrros.h \
../include/dcmtk/dcmrt/seq/drtspccs.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
../include/dcmtk/dcmrt/seq/drtrfors.h \
../include/dcmtk/dcmrt/seq/drtrsts.h \
../include/dcmtk/dcmrt/seq/drtrses.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrps.h \
../include/dcmtk/dcmrt/seq/drtrppss.h \
../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrss.h \
- ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
+ ../include/dcmtk/dcmrt/seq/drtras.h \
../include/dcmtk/dcmrt/seq/drtrrpcs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h \
- ../include/dcmtk/dcmrt/seq/drtssrs.h ../include/dcmtk/dcmrt/seq/drtdcs.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h ../include/dcmtk/dcmrt/drmsrch.h
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtssrs.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h ../include/dcmtk/dcmrt/drmsrch.h
drtaadcs.o: drtaadcs.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
../include/dcmtk/dcmrt/seq/drtecs.h
-drtarics.o: drtarics.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtarics.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
- ../../ofstd/include/dcmtk/ofstd/oftypes.h \
- ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
- ../../ofstd/include/dcmtk/ofstd/ofcast.h \
- ../../ofstd/include/dcmtk/ofstd/ofexport.h \
- ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
- ../../ofstd/include/dcmtk/ofstd/ofstream.h \
- ../include/dcmtk/dcmrt/drttypes.h \
- ../../ofstd/include/dcmtk/ofstd/ofcond.h \
- ../../ofstd/include/dcmtk/ofstd/ofstring.h \
- ../../ofstd/include/dcmtk/ofstd/ofvector.h \
- ../../oflog/include/dcmtk/oflog/oflog.h \
- ../../oflog/include/dcmtk/oflog/logger.h \
- ../../oflog/include/dcmtk/oflog/config.h \
- ../../oflog/include/dcmtk/oflog/config/defines.h \
- ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
- ../../oflog/include/dcmtk/oflog/loglevel.h \
- ../../oflog/include/dcmtk/oflog/tstring.h \
- ../../oflog/include/dcmtk/oflog/tchar.h \
- ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
- ../../oflog/include/dcmtk/oflog/appender.h \
- ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
- ../../oflog/include/dcmtk/oflog/layout.h \
- ../../oflog/include/dcmtk/oflog/streams.h \
- ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
- ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
- ../../oflog/include/dcmtk/oflog/spi/filter.h \
- ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
- ../../oflog/include/dcmtk/oflog/spi/logfact.h \
- ../../oflog/include/dcmtk/oflog/logmacro.h \
- ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
- ../../oflog/include/dcmtk/oflog/tracelog.h \
- ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
- ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
- ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
- ../../ofstd/include/dcmtk/ofstd/ofthread.h \
- ../../ofstd/include/dcmtk/ofstd/offile.h \
- ../../ofstd/include/dcmtk/ofstd/ofstd.h \
- ../../ofstd/include/dcmtk/ofstd/oftraits.h \
- ../../ofstd/include/dcmtk/ofstd/oflimits.h \
- ../../config/include/dcmtk/config/arith.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
- ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
- ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
- ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
- ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
- ../../ofstd/include/dcmtk/ofstd/ofmap.h \
- ../../ofstd/include/dcmtk/ofstd/ofutil.h \
- ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
- ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h
drtas1.o: drtas1.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/seq/drtas1.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../include/dcmtk/dcmrt/seq/drtois.h ../include/dcmtk/dcmrt/seq/drtics.h \
../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpics.h \
../include/dcmtk/dcmrt/seq/drtporcs.h
-drtchs.o: drtchs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtchs.h \
+drtcgis.o: drtcgis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbcps.h \
- ../include/dcmtk/dcmrt/seq/drtbrdrs.h \
- ../include/dcmtk/dcmrt/seq/drtcshs.h
-drtcims.o: drtcims.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtchs.o: drtchs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtchs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h
-drtcis.o: drtcis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h \
+ ../include/dcmtk/dcmrt/seq/drtbcps.h \
+ ../include/dcmtk/dcmrt/seq/drtbrdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtcshs.h
+drtcims.o: drtcims.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtcncs.o: drtcncs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h
+drtcis.o: drtcis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtcos.o: drtcos.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcos.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtcncs.o: drtcncs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtcpas.o: drtcpas.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcpas.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtcos.o: drtcos.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcos.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtcpis.o: drtcpis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcpis.h \
+drtcpas.o: drtcpas.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcpas.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h
-drtcps.o: drtcps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcps.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtcpis.o: drtcpis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcpis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbldps.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs1.h \
- ../include/dcmtk/dcmrt/seq/drtrds.h ../include/dcmtk/dcmrt/seq/drtwps.h
-drtcs.o: drtcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcs.h \
+ ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h
+drtcps.o: drtcps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h
-drtcsas.o: drtcsas.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcsas.h \
+ ../include/dcmtk/dcmrt/seq/drtbldps.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs1.h \
+ ../include/dcmtk/dcmrt/seq/drtrds.h ../include/dcmtk/dcmrt/seq/drtwps.h
+drtcs.o: drtcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtcshs.o: drtcshs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcshs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtcis.h
+drtcsas.o: drtcsas.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcsas.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtcsis.o: drtcsis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcsis.h \
+drtcshs.o: drtcshs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcshs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtcss.o: drtcss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtcss.h \
+drtcsis.o: drtcsis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcsis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtdcs.o: drtdcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtcss.o: drtcss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtcss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
../include/dcmtk/dcmrt/seq/drtecs.h
-drtdias.o: drtdias.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h \
+drtdcs.o: drtdcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtdimcs.o: drtdimcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdimcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtdddps.o: drtdddps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdddps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtdimrs.o: drtdimrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdimrs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtddps.o: drtddps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtddps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtdirs.o: drtdirs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdirs.h \
+drtdias.o: drtdias.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtdose.o: drtdose.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/drtdose.h ../include/dcmtk/dcmrt/drttypes.h \
+drtdimcs.o: drtdimcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdimcs.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtbrs.h \
- ../include/dcmtk/dcmrt/seq/drtbrcss.h \
- ../include/dcmtk/dcmrt/seq/drtcsis.h \
- ../include/dcmtk/dcmrt/seq/drtcctus.h \
- ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
- ../include/dcmtk/dcmrt/seq/drtois.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtcsas.h \
- ../include/dcmtk/dcmrt/seq/drtdvhs.h \
- ../include/dcmtk/dcmrt/seq/drtdvrrs.h \
- ../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
- ../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfes.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
- ../include/dcmtk/dcmrt/seq/drtipiqs.h \
- ../include/dcmtk/dcmrt/seq/drtaadcs.h \
- ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
- ../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmls.h \
- ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
- ../include/dcmtk/dcmrt/seq/drtopis.h \
- ../include/dcmtk/dcmrt/seq/drtpbcs.h \
- ../include/dcmtk/dcmrt/seq/drtpsics.h \
- ../include/dcmtk/dcmrt/seq/drtpscs.h \
- ../include/dcmtk/dcmrt/seq/drtppcs.h \
- ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h \
- ../include/dcmtk/dcmrt/seq/drtporis.h \
- ../include/dcmtk/dcmrt/seq/drtprsis.h \
- ../include/dcmtk/dcmrt/seq/drtpsss.h \
- ../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrcs.h ../include/dcmtk/dcmrt/seq/drtcs.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h \
- ../include/dcmtk/dcmrt/seq/drtrdros.h \
- ../include/dcmtk/dcmrt/seq/drtrwvms.h \
- ../include/dcmtk/dcmrt/seq/drtqds.h \
- ../include/dcmtk/dcmrt/seq/drtrppcs.h \
- ../include/dcmtk/dcmrt/seq/drtrfors.h \
- ../include/dcmtk/dcmrt/seq/drtrsts.h \
- ../include/dcmtk/dcmrt/seq/drtrses.h \
- ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
- ../include/dcmtk/dcmrt/seq/drtrpphs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtdimrs.o: drtdimrs.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
- ../include/dcmtk/dcmrt/seq/drtdirs.h \
- ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
- ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
- ../include/dcmtk/dcmrt/seq/drtrps.h \
- ../include/dcmtk/dcmrt/seq/drtrppss.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps.h \
- ../include/dcmtk/dcmrt/seq/drtrfgs.h \
- ../include/dcmtk/dcmrt/seq/drtrbs2.h \
- ../include/dcmtk/dcmrt/seq/drtrcps.h \
- ../include/dcmtk/dcmrt/seq/drtrbas2.h \
- ../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtrsrs.h \
- ../include/dcmtk/dcmrt/seq/drtrsss.h ../include/dcmtk/dcmrt/seq/drtrss.h \
- ../include/dcmtk/dcmrt/seq/drtrtrs2.h \
- ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
- ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtspcs.h \
- ../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
- ../include/dcmtk/dcmrt/seq/drtssrs.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h
-drtdrs.o: drtdrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtds.o: drtds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtds.h \
+drtdirs.o: drtdirs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdirs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtdspcs.o: drtdspcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtdose.o: drtdose.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/drtdose.h ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
../../ofstd/include/dcmtk/ofstd/ofstream.h \
- ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtdss.o: drtdss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrcss.h \
+ ../include/dcmtk/dcmrt/seq/drtcsis.h \
+ ../include/dcmtk/dcmrt/seq/drtcctus.h \
+ ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcsas.h \
+ ../include/dcmtk/dcmrt/seq/drtdvhs.h \
+ ../include/dcmtk/dcmrt/seq/drtdvrrs.h \
+ ../include/dcmtk/dcmrt/seq/drtdimcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdspcs.h \
+ ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfes.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtiseis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtmls.h ../include/dcmtk/dcmrt/seq/drtoas.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtpbcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpsics.h \
+ ../include/dcmtk/dcmrt/seq/drtpscs.h \
+ ../include/dcmtk/dcmrt/seq/drtppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h \
+ ../include/dcmtk/dcmrt/seq/drtporis.h \
+ ../include/dcmtk/dcmrt/seq/drtprsis.h \
+ ../include/dcmtk/dcmrt/seq/drtpsss.h \
+ ../include/dcmtk/dcmrt/seq/drtpdecs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h ../include/dcmtk/dcmrt/seq/drtrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h \
+ ../include/dcmtk/dcmrt/seq/drtrdros.h \
+ ../include/dcmtk/dcmrt/seq/drtrwvms.h \
+ ../include/dcmtk/dcmrt/seq/drtqds.h \
+ ../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrfors.h \
+ ../include/dcmtk/dcmrt/seq/drtrsts.h \
+ ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrpphs.h \
+ ../include/dcmtk/dcmrt/seq/drtdimrs.h \
+ ../include/dcmtk/dcmrt/seq/drtdirs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrps.h \
+ ../include/dcmtk/dcmrt/seq/drtrppss.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps.h \
+ ../include/dcmtk/dcmrt/seq/drtrfgs.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs2.h \
+ ../include/dcmtk/dcmrt/seq/drtrcps.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas2.h \
+ ../include/dcmtk/dcmrt/seq/drtrsers.h \
+ ../include/dcmtk/dcmrt/seq/drtrsrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsss.h ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrtrs2.h \
+ ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrscs.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtssrs.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h
+drtdrs.o: drtdrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtdvhs.o: drtdvhs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdvhs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtds.o: drtds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtdvrrs.h
-drtdvrrs.o: drtdvrrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtdvrrs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtdspcs.o: drtdspcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdspcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drteas.o: drteas.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drteas.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtdss.o: drtdss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtecs.o: drtecs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtdspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtdvhs.o: drtdvhs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdvhs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtes.o: drtes.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtdvrrs.h
+drtdvrrs.o: drtdvrrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtdvrrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtas5.h ../include/dcmtk/dcmrt/seq/drtags.h \
- ../include/dcmtk/dcmrt/seq/drtblds5.h \
- ../include/dcmtk/dcmrt/seq/drtbl5.h ../include/dcmtk/dcmrt/seq/drtgas.h \
- ../include/dcmtk/dcmrt/seq/drtpfms.h
-drtfds.o: drtfds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtfds.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
- ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drteas.o: drteas.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drteas.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtfes.o: drtfes.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtfes.h \
+drtecs.o: drtecs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtfgs.o: drtfgs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtfgs.h \
+drtes.o: drtes.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtes.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrbs8.h \
- ../include/dcmtk/dcmrt/seq/drtbvcps.h \
- ../include/dcmtk/dcmrt/seq/drtrbas8.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
- ../include/dcmtk/dcmrt/seq/drtrds.h
-drtfgss.o: drtfgss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtfgss.h \
+ ../include/dcmtk/dcmrt/seq/drtas5.h ../include/dcmtk/dcmrt/seq/drtags.h \
+ ../include/dcmtk/dcmrt/seq/drtblds5.h \
+ ../include/dcmtk/dcmrt/seq/drtbl5.h ../include/dcmtk/dcmrt/seq/drtgas.h \
+ ../include/dcmtk/dcmrt/seq/drtpfms.h
+drtfds.o: drtfds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtfds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtfsss.h
-drtfms.o: drtfms.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtfms.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtfes.o: drtfes.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtfes.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtfsss.o: drtfsss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtfsss.h \
+drtfgs.o: drtfgs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtfgs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtgas.o: drtgas.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtgas.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs8.h \
+ ../include/dcmtk/dcmrt/seq/drtbvcps.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas8.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
+ ../include/dcmtk/dcmrt/seq/drtrds.h
+drtfgss.o: drtfgss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtfgss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drthsdrs.o: drthsdrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtfsss.h
+drtfms.o: drtfms.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtfms.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtiais.o: drtiais.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+drtfsss.o: drtfsss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtfsss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtians.o: drtians.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
+drtgas.o: drtgas.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtgas.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtiblds.o: drtiblds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtiblds.h \
+drtgpis.o: drtgpis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtibls.o: drtibls.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtibls.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtafs.h \
+ ../include/dcmtk/dcmrt/seq/drtajcs.h
+drthsdrs.o: drthsdrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbss.h
-drtibs.o: drtibs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtibs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtiais.o: drtiais.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtas6.h ../include/dcmtk/dcmrt/seq/drtgas.h \
- ../include/dcmtk/dcmrt/seq/drtiblds.h \
- ../include/dcmtk/dcmrt/seq/drtibls.h ../include/dcmtk/dcmrt/seq/drtbss.h \
- ../include/dcmtk/dcmrt/seq/drticps.h \
- ../include/dcmtk/dcmrt/seq/drtbldps.h \
- ../include/dcmtk/dcmrt/seq/drtiwps.h \
- ../include/dcmtk/dcmrt/seq/drtlsds6.h \
- ../include/dcmtk/dcmrt/seq/drtrmss6.h \
- ../include/dcmtk/dcmrt/seq/drtrshs6.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs6.h \
- ../include/dcmtk/dcmrt/seq/drtircs.h ../include/dcmtk/dcmrt/seq/drtiws.h \
- ../include/dcmtk/dcmrt/seq/drtlsds.h ../include/dcmtk/dcmrt/seq/drtrms.h \
- ../include/dcmtk/dcmrt/seq/drtrshs.h \
- ../include/dcmtk/dcmrt/seq/drtrbos6.h \
- ../include/dcmtk/dcmrt/seq/drtrds.h \
- ../include/dcmtk/dcmrt/seq/drtrris6.h \
- ../include/dcmtk/dcmrt/seq/drtsns.h
-drticpds.o: drticpds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drticpds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtians.o: drtians.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbldps.h \
- ../include/dcmtk/dcmrt/seq/drtcpas.h \
- ../include/dcmtk/dcmrt/seq/drtiwps.h \
- ../include/dcmtk/dcmrt/seq/drtlsds7.h ../include/dcmtk/dcmrt/seq/drtos.h \
- ../include/dcmtk/dcmrt/seq/drtrmss7.h \
- ../include/dcmtk/dcmrt/seq/drtrshs7.h
-drticps.o: drticps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drticps.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtiblds.o: drtiblds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtiblds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbldps.h \
- ../include/dcmtk/dcmrt/seq/drtiwps.h \
- ../include/dcmtk/dcmrt/seq/drtlsds6.h \
- ../include/dcmtk/dcmrt/seq/drtrmss6.h \
- ../include/dcmtk/dcmrt/seq/drtrshs6.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs6.h
-drtics.o: drtics.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtibls.o: drtibls.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtibls.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtiis.o: drtiis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtiis.h \
+ ../include/dcmtk/dcmrt/seq/drtbss.h
+drtibs.o: drtibs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtibs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtimage.o: drtimage.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/drtimage.h ../include/dcmtk/dcmrt/drttypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtas6.h ../include/dcmtk/dcmrt/seq/drtddps.h \
+ ../include/dcmtk/dcmrt/seq/drtgas.h \
+ ../include/dcmtk/dcmrt/seq/drtiblds.h \
+ ../include/dcmtk/dcmrt/seq/drtibls.h ../include/dcmtk/dcmrt/seq/drtbss.h \
+ ../include/dcmtk/dcmrt/seq/drticps.h \
+ ../include/dcmtk/dcmrt/seq/drtbldps.h \
+ ../include/dcmtk/dcmrt/seq/drtiwps.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds6.h \
+ ../include/dcmtk/dcmrt/seq/drtrmss6.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs6.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs6.h \
+ ../include/dcmtk/dcmrt/seq/drtircs.h ../include/dcmtk/dcmrt/seq/drtiws.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds.h ../include/dcmtk/dcmrt/seq/drtrms.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs.h \
+ ../include/dcmtk/dcmrt/seq/drtrbos6.h \
+ ../include/dcmtk/dcmrt/seq/drtrds.h \
+ ../include/dcmtk/dcmrt/seq/drtrris6.h \
+ ../include/dcmtk/dcmrt/seq/drtsns.h
+drticpds.o: drticpds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drticpds.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtbrs.h \
- ../include/dcmtk/dcmrt/seq/drtbrcss.h \
- ../include/dcmtk/dcmrt/seq/drtcsis.h \
- ../include/dcmtk/dcmrt/seq/drtcctus.h \
- ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h \
- ../include/dcmtk/dcmrt/seq/drtcbars.h \
- ../include/dcmtk/dcmrt/seq/drtads.h ../include/dcmtk/dcmrt/seq/drtbas.h \
- ../include/dcmtk/dcmrt/seq/drtces.h ../include/dcmtk/dcmrt/seq/drtois.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtcsas.h \
- ../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtds.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
- ../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtes.h \
- ../include/dcmtk/dcmrt/seq/drtas5.h ../include/dcmtk/dcmrt/seq/drtags.h \
- ../include/dcmtk/dcmrt/seq/drtblds5.h \
- ../include/dcmtk/dcmrt/seq/drtbl5.h ../include/dcmtk/dcmrt/seq/drtgas.h \
- ../include/dcmtk/dcmrt/seq/drtpfms.h ../include/dcmtk/dcmrt/seq/drtfms.h \
- ../include/dcmtk/dcmrt/seq/drtfes.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
- ../include/dcmtk/dcmrt/seq/drtipiqs.h \
- ../include/dcmtk/dcmrt/seq/drtaadcs.h \
- ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
- ../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmls.h \
- ../include/dcmtk/dcmrt/seq/drtmacds.h \
- ../include/dcmtk/dcmrt/seq/drtcss.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
- ../include/dcmtk/dcmrt/seq/drtpbcs.h \
- ../include/dcmtk/dcmrt/seq/drtpsics.h \
- ../include/dcmtk/dcmrt/seq/drtpscs.h \
- ../include/dcmtk/dcmrt/seq/drtppcs.h \
- ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h \
- ../include/dcmtk/dcmrt/seq/drtporis.h \
- ../include/dcmtk/dcmrt/seq/drtprsis.h \
- ../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrwvms.h \
- ../include/dcmtk/dcmrt/seq/drtqds.h \
- ../include/dcmtk/dcmrt/seq/drtrppcs.h \
- ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
- ../include/dcmtk/dcmrt/seq/drtrpphs.h \
- ../include/dcmtk/dcmrt/seq/drtdimrs.h \
- ../include/dcmtk/dcmrt/seq/drtdirs.h \
- ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
- ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
- ../include/dcmtk/dcmrt/seq/drtrps.h \
- ../include/dcmtk/dcmrt/seq/drtrppss.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps5.h \
- ../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
- ../include/dcmtk/dcmrt/seq/drtras.h \
- ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtspcs.h \
- ../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h \
- ../include/dcmtk/dcmrt/seq/drtvls.h
-drtionpl.o: drtionpl.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/drtionpl.h ../include/dcmtk/dcmrt/drttypes.h \
+ ../include/dcmtk/dcmrt/seq/drtbldps.h \
+ ../include/dcmtk/dcmrt/seq/drtcpas.h \
+ ../include/dcmtk/dcmrt/seq/drtiwps.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds7.h ../include/dcmtk/dcmrt/seq/drtos.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtrmss7.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs7.h
+drticps.o: drticps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drticps.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtbrs.h \
- ../include/dcmtk/dcmrt/seq/drtbrcss.h \
- ../include/dcmtk/dcmrt/seq/drtcsis.h \
- ../include/dcmtk/dcmrt/seq/drtcctus.h \
- ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
- ../include/dcmtk/dcmrt/seq/drtois.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtcsas.h \
- ../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
- ../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drtdrs.h ../include/dcmtk/dcmrt/seq/drteas.h \
- ../include/dcmtk/dcmrt/seq/drtfgs.h ../include/dcmtk/dcmrt/seq/drtrbs8.h \
- ../include/dcmtk/dcmrt/seq/drtbvcps.h \
- ../include/dcmtk/dcmrt/seq/drtrbas8.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
- ../include/dcmtk/dcmrt/seq/drtrds.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtibs.h ../include/dcmtk/dcmrt/seq/drtas6.h \
- ../include/dcmtk/dcmrt/seq/drtgas.h \
- ../include/dcmtk/dcmrt/seq/drtiblds.h \
- ../include/dcmtk/dcmrt/seq/drtibls.h ../include/dcmtk/dcmrt/seq/drtbss.h \
- ../include/dcmtk/dcmrt/seq/drticps.h \
../include/dcmtk/dcmrt/seq/drtbldps.h \
../include/dcmtk/dcmrt/seq/drtiwps.h \
../include/dcmtk/dcmrt/seq/drtlsds6.h \
- ../include/dcmtk/dcmrt/seq/drtrmss6.h \
- ../include/dcmtk/dcmrt/seq/drtrshs6.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs6.h \
- ../include/dcmtk/dcmrt/seq/drtircs.h ../include/dcmtk/dcmrt/seq/drtiws.h \
- ../include/dcmtk/dcmrt/seq/drtlsds.h ../include/dcmtk/dcmrt/seq/drtrms.h \
- ../include/dcmtk/dcmrt/seq/drtrshs.h \
- ../include/dcmtk/dcmrt/seq/drtrbos6.h \
- ../include/dcmtk/dcmrt/seq/drtrris6.h \
- ../include/dcmtk/dcmrt/seq/drtsns.h ../include/dcmtk/dcmrt/seq/drtitts.h \
- ../include/dcmtk/dcmrt/seq/drtbldts.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
- ../include/dcmtk/dcmrt/seq/drtipiqs.h \
- ../include/dcmtk/dcmrt/seq/drtaadcs.h \
- ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
- ../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
- ../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
- ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
- ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
- ../include/dcmtk/dcmrt/seq/drtshds.h \
- ../include/dcmtk/dcmrt/seq/drtpsics.h \
- ../include/dcmtk/dcmrt/seq/drtpscs.h \
- ../include/dcmtk/dcmrt/seq/drtppcs.h \
- ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h \
- ../include/dcmtk/dcmrt/seq/drtporis.h \
- ../include/dcmtk/dcmrt/seq/drtprsis.h \
- ../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrppcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpphs.h \
- ../include/dcmtk/dcmrt/seq/drtdimrs.h \
- ../include/dcmtk/dcmrt/seq/drtdirs.h \
- ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
- ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
- ../include/dcmtk/dcmrt/seq/drtrps.h \
- ../include/dcmtk/dcmrt/seq/drtrppss.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps3.h \
- ../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrsss.h \
- ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
- ../include/dcmtk/dcmrt/seq/drtras.h \
- ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtspcs.h \
- ../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h
-drtiontr.o: drtiontr.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/drtiontr.h ../include/dcmtk/dcmrt/drttypes.h \
+ ../include/dcmtk/dcmrt/seq/drtrmss6.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs6.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs6.h
+drtics.o: drtics.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtiis.o: drtiis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtiis.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtimage.o: drtimage.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/drtimage.h ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrcss.h \
+ ../include/dcmtk/dcmrt/seq/drtcsis.h \
+ ../include/dcmtk/dcmrt/seq/drtcctus.h \
+ ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h \
+ ../include/dcmtk/dcmrt/seq/drtcbars.h \
+ ../include/dcmtk/dcmrt/seq/drtads.h ../include/dcmtk/dcmrt/seq/drtbas.h \
+ ../include/dcmtk/dcmrt/seq/drtces.h ../include/dcmtk/dcmrt/seq/drtois.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcsas.h \
+ ../include/dcmtk/dcmrt/seq/drtdimcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtds.h \
+ ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdspcs.h \
+ ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtes.h \
+ ../include/dcmtk/dcmrt/seq/drtas5.h ../include/dcmtk/dcmrt/seq/drtags.h \
+ ../include/dcmtk/dcmrt/seq/drtblds5.h \
+ ../include/dcmtk/dcmrt/seq/drtbl5.h ../include/dcmtk/dcmrt/seq/drtgas.h \
+ ../include/dcmtk/dcmrt/seq/drtpfms.h ../include/dcmtk/dcmrt/seq/drtfms.h \
+ ../include/dcmtk/dcmrt/seq/drtfes.h ../include/dcmtk/dcmrt/seq/drtgpis.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtiseis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtmls.h \
+ ../include/dcmtk/dcmrt/seq/drtmacds.h \
+ ../include/dcmtk/dcmrt/seq/drtcss.h ../include/dcmtk/dcmrt/seq/drtoas.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtpbcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpsics.h \
+ ../include/dcmtk/dcmrt/seq/drtpscs.h \
+ ../include/dcmtk/dcmrt/seq/drtppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h \
+ ../include/dcmtk/dcmrt/seq/drtporis.h \
+ ../include/dcmtk/dcmrt/seq/drtprsis.h \
+ ../include/dcmtk/dcmrt/seq/drtpdecs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrwvms.h \
+ ../include/dcmtk/dcmrt/seq/drtqds.h \
+ ../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrpphs.h \
+ ../include/dcmtk/dcmrt/seq/drtdimrs.h \
+ ../include/dcmtk/dcmrt/seq/drtdirs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrps.h \
+ ../include/dcmtk/dcmrt/seq/drtrppss.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps5.h \
+ ../include/dcmtk/dcmrt/seq/drtrsers.h \
+ ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
+ ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrscs.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h ../include/dcmtk/dcmrt/seq/drtvls.h
+drtionpl.o: drtionpl.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/drtionpl.h ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrcss.h \
+ ../include/dcmtk/dcmrt/seq/drtcsis.h \
+ ../include/dcmtk/dcmrt/seq/drtcctus.h \
+ ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcsas.h \
+ ../include/dcmtk/dcmrt/seq/drtdimcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdrs.h ../include/dcmtk/dcmrt/seq/drteas.h \
+ ../include/dcmtk/dcmrt/seq/drtfgs.h ../include/dcmtk/dcmrt/seq/drtrbs8.h \
+ ../include/dcmtk/dcmrt/seq/drtbvcps.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas8.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
+ ../include/dcmtk/dcmrt/seq/drtrds.h ../include/dcmtk/dcmrt/seq/drtgpis.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtibs.h ../include/dcmtk/dcmrt/seq/drtas6.h \
+ ../include/dcmtk/dcmrt/seq/drtddps.h ../include/dcmtk/dcmrt/seq/drtgas.h \
+ ../include/dcmtk/dcmrt/seq/drtiblds.h \
+ ../include/dcmtk/dcmrt/seq/drtibls.h ../include/dcmtk/dcmrt/seq/drtbss.h \
+ ../include/dcmtk/dcmrt/seq/drticps.h \
+ ../include/dcmtk/dcmrt/seq/drtbldps.h \
+ ../include/dcmtk/dcmrt/seq/drtiwps.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds6.h \
+ ../include/dcmtk/dcmrt/seq/drtrmss6.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs6.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs6.h \
+ ../include/dcmtk/dcmrt/seq/drtircs.h ../include/dcmtk/dcmrt/seq/drtiws.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds.h ../include/dcmtk/dcmrt/seq/drtrms.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs.h \
+ ../include/dcmtk/dcmrt/seq/drtrbos6.h \
+ ../include/dcmtk/dcmrt/seq/drtrris6.h \
+ ../include/dcmtk/dcmrt/seq/drtsns.h ../include/dcmtk/dcmrt/seq/drtitts.h \
+ ../include/dcmtk/dcmrt/seq/drtbldts.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtiseis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
+ ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
+ ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
+ ../include/dcmtk/dcmrt/seq/drtshds.h \
+ ../include/dcmtk/dcmrt/seq/drtpsics.h \
+ ../include/dcmtk/dcmrt/seq/drtpscs.h \
+ ../include/dcmtk/dcmrt/seq/drtppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h \
+ ../include/dcmtk/dcmrt/seq/drtporis.h \
+ ../include/dcmtk/dcmrt/seq/drtprsis.h \
+ ../include/dcmtk/dcmrt/seq/drtpdecs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrpphs.h \
+ ../include/dcmtk/dcmrt/seq/drtdimrs.h \
+ ../include/dcmtk/dcmrt/seq/drtdirs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrps.h \
+ ../include/dcmtk/dcmrt/seq/drtrppss.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps3.h \
+ ../include/dcmtk/dcmrt/seq/drtrsers.h \
+ ../include/dcmtk/dcmrt/seq/drtrsss.h ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrscs.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h
+drtiontr.o: drtiontr.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/drtiontr.h ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrcss.h \
+ ../include/dcmtk/dcmrt/seq/drtcdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtcsis.h \
+ ../include/dcmtk/dcmrt/seq/drtcctus.h \
+ ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcsas.h \
+ ../include/dcmtk/dcmrt/seq/drtdimcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdspcs.h \
+ ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfgss.h \
+ ../include/dcmtk/dcmrt/seq/drtfsss.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtiseis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtmdrs.h ../include/dcmtk/dcmrt/seq/drtoas.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
+ ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
+ ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
+ ../include/dcmtk/dcmrt/seq/drtshds.h \
+ ../include/dcmtk/dcmrt/seq/drtpsics.h \
+ ../include/dcmtk/dcmrt/seq/drtpscs.h \
+ ../include/dcmtk/dcmrt/seq/drtppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h \
+ ../include/dcmtk/dcmrt/seq/drtporis.h \
+ ../include/dcmtk/dcmrt/seq/drtprsis.h \
+ ../include/dcmtk/dcmrt/seq/drtpdecs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrpphs.h \
+ ../include/dcmtk/dcmrt/seq/drtdimrs.h \
+ ../include/dcmtk/dcmrt/seq/drtdirs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrps.h \
+ ../include/dcmtk/dcmrt/seq/drtrppss.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps4.h \
+ ../include/dcmtk/dcmrt/seq/drtrsers.h \
+ ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrtrs4.h \
+ ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrscs.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drttms0.h \
+ ../include/dcmtk/dcmrt/seq/drttsibs.h \
+ ../include/dcmtk/dcmrt/seq/drtas7.h \
+ ../include/dcmtk/dcmrt/seq/drtbldls.h \
+ ../include/dcmtk/dcmrt/seq/drtdddps.h \
+ ../include/dcmtk/dcmrt/seq/drtgas.h \
+ ../include/dcmtk/dcmrt/seq/drticpds.h \
+ ../include/dcmtk/dcmrt/seq/drtbldps.h \
+ ../include/dcmtk/dcmrt/seq/drtcpas.h \
+ ../include/dcmtk/dcmrt/seq/drtiwps.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds7.h ../include/dcmtk/dcmrt/seq/drtos.h \
+ ../include/dcmtk/dcmrt/seq/drtrmss7.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs7.h \
+ ../include/dcmtk/dcmrt/seq/drtrbls.h \
+ ../include/dcmtk/dcmrt/seq/drtrcos.h \
+ ../include/dcmtk/dcmrt/seq/drtrlsds.h \
+ ../include/dcmtk/dcmrt/seq/drtrrms.h \
+ ../include/dcmtk/dcmrt/seq/drtrrshs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsns.h ../include/dcmtk/dcmrt/seq/drtrws.h \
+ ../include/dcmtk/dcmrt/seq/drtrbos7.h \
+ ../include/dcmtk/dcmrt/seq/drtrcdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrmdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrvis.h \
+ ../include/dcmtk/dcmrt/seq/drttscds.h \
+ ../include/dcmtk/dcmrt/seq/drttsmds.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h
+drtipiqs.o: drtipiqs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtafs.h \
+ ../include/dcmtk/dcmrt/seq/drtajcs.h
+drtircs.o: drtircs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtircs.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtiseis.o: drtiseis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtiseis.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtitts.o: drtitts.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtitts.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtbldts.h
+drtiwps.o: drtiwps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtiwps.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtiws.o: drtiws.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtiws.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtlsds.o: drtlsds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtlsds6.o: drtlsds6.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds6.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtbrs.h \
- ../include/dcmtk/dcmrt/seq/drtbrcss.h \
- ../include/dcmtk/dcmrt/seq/drtcdrs.h \
- ../include/dcmtk/dcmrt/seq/drtcsis.h \
- ../include/dcmtk/dcmrt/seq/drtcctus.h \
- ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
- ../include/dcmtk/dcmrt/seq/drtois.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtcsas.h \
- ../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
- ../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfgss.h \
- ../include/dcmtk/dcmrt/seq/drtfsss.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
- ../include/dcmtk/dcmrt/seq/drtipiqs.h \
- ../include/dcmtk/dcmrt/seq/drtaadcs.h \
- ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
- ../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmdrs.h \
- ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
- ../include/dcmtk/dcmrt/seq/drtopis.h \
- ../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
- ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
- ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
- ../include/dcmtk/dcmrt/seq/drtshds.h \
- ../include/dcmtk/dcmrt/seq/drtpsics.h \
- ../include/dcmtk/dcmrt/seq/drtpscs.h \
- ../include/dcmtk/dcmrt/seq/drtppcs.h \
- ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h \
- ../include/dcmtk/dcmrt/seq/drtporis.h \
- ../include/dcmtk/dcmrt/seq/drtprsis.h \
- ../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrppcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpphs.h \
- ../include/dcmtk/dcmrt/seq/drtdimrs.h \
- ../include/dcmtk/dcmrt/seq/drtdirs.h \
- ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
- ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
- ../include/dcmtk/dcmrt/seq/drtrps.h \
- ../include/dcmtk/dcmrt/seq/drtrppss.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps4.h \
- ../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrss.h \
- ../include/dcmtk/dcmrt/seq/drtrtrs4.h \
- ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
- ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtspcs.h \
- ../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h \
- ../include/dcmtk/dcmrt/seq/drttms0.h \
- ../include/dcmtk/dcmrt/seq/drttsibs.h \
- ../include/dcmtk/dcmrt/seq/drtas7.h \
- ../include/dcmtk/dcmrt/seq/drtbldls.h \
- ../include/dcmtk/dcmrt/seq/drtgas.h \
- ../include/dcmtk/dcmrt/seq/drticpds.h \
- ../include/dcmtk/dcmrt/seq/drtbldps.h \
- ../include/dcmtk/dcmrt/seq/drtcpas.h \
- ../include/dcmtk/dcmrt/seq/drtiwps.h \
- ../include/dcmtk/dcmrt/seq/drtlsds7.h ../include/dcmtk/dcmrt/seq/drtos.h \
- ../include/dcmtk/dcmrt/seq/drtrmss7.h \
- ../include/dcmtk/dcmrt/seq/drtrshs7.h \
- ../include/dcmtk/dcmrt/seq/drtrbls.h \
- ../include/dcmtk/dcmrt/seq/drtrcos.h \
- ../include/dcmtk/dcmrt/seq/drtrlsds.h \
- ../include/dcmtk/dcmrt/seq/drtrrms.h \
- ../include/dcmtk/dcmrt/seq/drtrrshs.h \
- ../include/dcmtk/dcmrt/seq/drtrsns.h ../include/dcmtk/dcmrt/seq/drtrws.h \
- ../include/dcmtk/dcmrt/seq/drtrbos7.h \
- ../include/dcmtk/dcmrt/seq/drtrcdrs.h \
- ../include/dcmtk/dcmrt/seq/drtrmdrs.h \
- ../include/dcmtk/dcmrt/seq/drtrvis.h \
- ../include/dcmtk/dcmrt/seq/drttscds.h \
- ../include/dcmtk/dcmrt/seq/drttsmds.h
-drtipiqs.o: drtipiqs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtlsds7.o: drtlsds7.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtlsds7.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtaadcs.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtafs.h \
- ../include/dcmtk/dcmrt/seq/drtajcs.h
-drtircs.o: drtircs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtircs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtmacds.o: drtmacds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmacds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtiseis.o: drtiseis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtiseis.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtcss.h ../include/dcmtk/dcmrt/seq/drtecs.h
+drtmas.o: drtmas.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtitts.o: drtitts.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtitts.h \
+drtmdrs.o: drtmdrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmdrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbldts.h
-drtiwps.o: drtiwps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtiwps.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtmls.o: drtmls.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmls.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtiws.o: drtiws.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtiws.h \
+drtmps.o: drtmps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtlsds.o: drtlsds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtlsds.h \
+drtmris.o: drtmris.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmris.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtlsds6.o: drtlsds6.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtlsds6.h \
+drtmss.o: drtmss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtlsds7.o: drtlsds7.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtlsds7.h \
+drtmucs.o: drtmucs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtmacds.o: drtmacds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtmacds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtoas.o: drtoas.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtcss.h ../include/dcmtk/dcmrt/seq/drtecs.h
-drtmas.o: drtmas.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h
+drtois.o: drtois.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtmdrs.o: drtmdrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtmdrs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h
+drtopis.o: drtopis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtmls.o: drtmls.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtmls.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtafs.h \
+ ../include/dcmtk/dcmrt/seq/drtajcs.h
+drtos.o: drtos.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtos.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtmps.o: drtmps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpics.h
+drtpbcs.o: drtpbcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpbcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
- ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtmss.o: drtmss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtmss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtpcs.o: drtpcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtmucs.o: drtmucs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtpcxs.o: drtpcxs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpcxs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtoas.o: drtoas.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtoas.h \
+ ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h
+drtpdecs.o: drtpdecs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpdecs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h
-drtois.o: drtois.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtois.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h
+drtpdeds.o: drtpdeds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h
-drtopis.o: drtopis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtpfms.o: drtpfms.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpfms.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtipiqs.h \
- ../include/dcmtk/dcmrt/seq/drtaadcs.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtafs.h \
- ../include/dcmtk/dcmrt/seq/drtajcs.h
-drtos.o: drtos.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtos.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtpics.o: drtpics.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtpbcs.o: drtpbcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpbcs.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtplan.o: drtplan.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/drtplan.h ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
../../ofstd/include/dcmtk/ofstd/ofstream.h \
- ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtpcs.o: drtpcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtass.h ../include/dcmtk/dcmrt/seq/drtbads.h \
+ ../include/dcmtk/dcmrt/seq/drtchs.h ../include/dcmtk/dcmrt/seq/drtbcps.h \
+ ../include/dcmtk/dcmrt/seq/drtbrdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtcshs.h \
+ ../include/dcmtk/dcmrt/seq/drtrris9.h ../include/dcmtk/dcmrt/seq/drtbs.h \
+ ../include/dcmtk/dcmrt/seq/drtas1.h ../include/dcmtk/dcmrt/seq/drtags.h \
+ ../include/dcmtk/dcmrt/seq/drtblds1.h \
+ ../include/dcmtk/dcmrt/seq/drtbl2.h ../include/dcmtk/dcmrt/seq/drtcos.h \
+ ../include/dcmtk/dcmrt/seq/drtcps.h \
+ ../include/dcmtk/dcmrt/seq/drtbldps.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs1.h \
+ ../include/dcmtk/dcmrt/seq/drtrds.h ../include/dcmtk/dcmrt/seq/drtwps.h \
+ ../include/dcmtk/dcmrt/seq/drtgas.h ../include/dcmtk/dcmrt/seq/drtpvis.h \
+ ../include/dcmtk/dcmrt/seq/drtpfms.h \
+ ../include/dcmtk/dcmrt/seq/drtrbos1.h \
+ ../include/dcmtk/dcmrt/seq/drtrris1.h ../include/dcmtk/dcmrt/seq/drtws.h \
+ ../include/dcmtk/dcmrt/seq/drtbrs.h \
+ ../include/dcmtk/dcmrt/seq/drtbrcss.h \
+ ../include/dcmtk/dcmrt/seq/drtcsis.h \
+ ../include/dcmtk/dcmrt/seq/drtcctus.h \
+ ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcsas.h \
+ ../include/dcmtk/dcmrt/seq/drtdimcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdrs.h ../include/dcmtk/dcmrt/seq/drteas.h \
+ ../include/dcmtk/dcmrt/seq/drtfgs.h ../include/dcmtk/dcmrt/seq/drtrbs8.h \
+ ../include/dcmtk/dcmrt/seq/drtbvcps.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas8.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtiseis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
+ ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
+ ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
+ ../include/dcmtk/dcmrt/seq/drtshds.h \
+ ../include/dcmtk/dcmrt/seq/drtpsics.h \
+ ../include/dcmtk/dcmrt/seq/drtpscs.h \
+ ../include/dcmtk/dcmrt/seq/drtppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h \
+ ../include/dcmtk/dcmrt/seq/drtporis.h \
+ ../include/dcmtk/dcmrt/seq/drtprsis.h \
+ ../include/dcmtk/dcmrt/seq/drtpdecs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrpphs.h \
+ ../include/dcmtk/dcmrt/seq/drtdimrs.h \
+ ../include/dcmtk/dcmrt/seq/drtdirs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrps.h \
+ ../include/dcmtk/dcmrt/seq/drtrppss.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps3.h \
+ ../include/dcmtk/dcmrt/seq/drtrsers.h \
+ ../include/dcmtk/dcmrt/seq/drtrsss.h ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrscs.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h ../include/dcmtk/dcmrt/seq/drtss.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drttts.h \
+ ../include/dcmtk/dcmrt/seq/drtbldts.h \
+ ../include/dcmtk/dcmrt/seq/drttms9.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h
+drtporcs.o: drtporcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
../include/dcmtk/dcmrt/seq/drtecs.h
-drtpcxs.o: drtpcxs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpcxs.h \
+drtporis.o: drtporis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtporis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h
-drtpdecs.o: drtpdecs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpdecs.h \
+ ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h
+drtppcs.o: drtppcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtppcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h
-drtpfms.o: drtpfms.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpfms.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpcxs.h \
+ ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h
+drtprsis.o: drtprsis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtprsis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtpics.o: drtpics.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h
+drtpscs.o: drtpscs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpscs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
../include/dcmtk/dcmrt/seq/drtecs.h
-drtplan.o: drtplan.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/drtplan.h ../include/dcmtk/dcmrt/drttypes.h \
+drtpsics.o: drtpsics.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpsics.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../ofstd/include/dcmtk/ofstd/ofcast.h \
../../ofstd/include/dcmtk/ofstd/ofexport.h \
../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../oflog/include/dcmtk/oflog/tracelog.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
- ../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofconsol.h \
../../ofstd/include/dcmtk/ofstd/ofthread.h \
../../ofstd/include/dcmtk/ofstd/offile.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtadcs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtass.h ../include/dcmtk/dcmrt/seq/drtbads.h \
- ../include/dcmtk/dcmrt/seq/drtchs.h ../include/dcmtk/dcmrt/seq/drtbcps.h \
- ../include/dcmtk/dcmrt/seq/drtbrdrs.h \
- ../include/dcmtk/dcmrt/seq/drtcshs.h \
- ../include/dcmtk/dcmrt/seq/drtrris9.h ../include/dcmtk/dcmrt/seq/drtbs.h \
- ../include/dcmtk/dcmrt/seq/drtas1.h ../include/dcmtk/dcmrt/seq/drtags.h \
- ../include/dcmtk/dcmrt/seq/drtblds1.h \
- ../include/dcmtk/dcmrt/seq/drtbl2.h ../include/dcmtk/dcmrt/seq/drtcos.h \
- ../include/dcmtk/dcmrt/seq/drtcps.h \
- ../include/dcmtk/dcmrt/seq/drtbldps.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs1.h \
- ../include/dcmtk/dcmrt/seq/drtrds.h ../include/dcmtk/dcmrt/seq/drtwps.h \
- ../include/dcmtk/dcmrt/seq/drtgas.h ../include/dcmtk/dcmrt/seq/drtpvis.h \
- ../include/dcmtk/dcmrt/seq/drtpfms.h \
- ../include/dcmtk/dcmrt/seq/drtrbos1.h \
- ../include/dcmtk/dcmrt/seq/drtrris1.h ../include/dcmtk/dcmrt/seq/drtws.h \
- ../include/dcmtk/dcmrt/seq/drtbrs.h \
- ../include/dcmtk/dcmrt/seq/drtbrcss.h \
- ../include/dcmtk/dcmrt/seq/drtcsis.h \
- ../include/dcmtk/dcmrt/seq/drtcctus.h \
- ../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
- ../include/dcmtk/dcmrt/seq/drtois.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtcsas.h \
- ../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
- ../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drtdrs.h ../include/dcmtk/dcmrt/seq/drteas.h \
- ../include/dcmtk/dcmrt/seq/drtfgs.h ../include/dcmtk/dcmrt/seq/drtrbs8.h \
- ../include/dcmtk/dcmrt/seq/drtbvcps.h \
- ../include/dcmtk/dcmrt/seq/drtrbas8.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
- ../include/dcmtk/dcmrt/seq/drtipiqs.h \
- ../include/dcmtk/dcmrt/seq/drtaadcs.h \
- ../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
- ../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
- ../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
- ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
- ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
- ../include/dcmtk/dcmrt/seq/drtshds.h \
- ../include/dcmtk/dcmrt/seq/drtpsics.h \
- ../include/dcmtk/dcmrt/seq/drtpscs.h \
- ../include/dcmtk/dcmrt/seq/drtppcs.h \
- ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h \
- ../include/dcmtk/dcmrt/seq/drtporis.h \
- ../include/dcmtk/dcmrt/seq/drtprsis.h \
- ../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrppcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpphs.h \
- ../include/dcmtk/dcmrt/seq/drtdimrs.h \
- ../include/dcmtk/dcmrt/seq/drtdirs.h \
- ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
- ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h \
- ../include/dcmtk/dcmrt/seq/drtrps.h \
- ../include/dcmtk/dcmrt/seq/drtrppss.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps3.h \
- ../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrsss.h \
- ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
- ../include/dcmtk/dcmrt/seq/drtras.h \
- ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtspcs.h \
- ../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtss.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h \
- ../include/dcmtk/dcmrt/seq/drttts.h \
- ../include/dcmtk/dcmrt/seq/drtbldts.h \
- ../include/dcmtk/dcmrt/seq/drttms9.h
-drtporcs.o: drtporcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtpss.o: drtpss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtporis.o: drtporis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtporis.h \
+ ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
+ ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
+ ../include/dcmtk/dcmrt/seq/drtshds.h
+drtpsss.o: drtpsss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpsss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h
-drtppcs.o: drtppcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtppcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtpvis.o: drtpvis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtpvis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpcxs.h \
- ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h
-drtprsis.o: drtprsis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtprsis.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtqds.o: drtqds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtqds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h
-drtpscs.o: drtpscs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpscs.h \
+ ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h
+drtras.o: drtras.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtras.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtpsics.o: drtpsics.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpsics.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspcs.h \
+ ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h
+drtrbas2.o: drtrbas2.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas2.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtpss.o: drtpss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrbas8.o: drtrbas8.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas8.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
- ../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
- ../include/dcmtk/dcmrt/seq/drtshds.h
-drtpsss.o: drtpsss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpsss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrbls.o: drtrbls.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbls.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtpvis.o: drtpvis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtpvis.h \
+drtrbos1.o: drtrbos1.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbos1.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtqds.o: drtqds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtqds.h \
+drtrbos6.o: drtrbos6.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbos6.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h
-drtras.o: drtras.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrbos7.o: drtrbos7.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbos7.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtrss.h \
- ../include/dcmtk/dcmrt/seq/drtrpcs.h \
- ../include/dcmtk/dcmrt/seq/drtspcs.h \
- ../include/dcmtk/dcmrt/seq/drtpcxs.h ../include/dcmtk/dcmrt/seq/drtccs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h
-drtrbas2.o: drtrbas2.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbas2.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrbs2.o: drtrbs2.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs2.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrbas8.o: drtrbas8.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbas8.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrcps.h
+drtrbs4.o: drtrbs4.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs4.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrbls.o: drtrbls.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbls.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtbvcps.h
+drtrbs8.o: drtrbs8.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs8.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrbos1.o: drtrbos1.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbos1.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtbvcps.h
+drtrcdrs.o: drtrcdrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrcdrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrbos6.o: drtrbos6.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbos6.h \
+drtrcos.o: drtrcos.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrcos.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrbos7.o: drtrbos7.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbos7.h \
+drtrcps.o: drtrcps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrcps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrbs2.o: drtrbs2.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbs2.h \
+drtrcs.o: drtrcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrcps.h
-drtrbs4.o: drtrbs4.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbs4.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h
+drtrdros.o: drtrdros.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrdros.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbvcps.h
-drtrbs8.o: drtrbs8.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrbs8.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrdrs1.o: drtrdrs1.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs1.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtbvcps.h
-drtrcdrs.o: drtrcdrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrcdrs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrdrs6.o: drtrdrs6.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs6.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrcos.o: drtrcos.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrcos.h \
+drtrdrs8.o: drtrdrs8.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrcps.o: drtrcps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrcps.h \
+drtrds.o: drtrds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrcs.o: drtrcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrcs.h \
+drtrecs.o: drtrecs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrecs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h
-drtrdros.o: drtrdros.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrdros.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrfgs.o: drtrfgs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrfgs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrdrs1.o: drtrdrs1.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs1.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs2.h \
+ ../include/dcmtk/dcmrt/seq/drtrcps.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas2.h
+drtrfors.o: drtrfors.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrfors.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrdrs6.o: drtrdrs6.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs6.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrsts.h \
+ ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtcis.h
+drtrics.o: drtrics.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrics.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrdrs8.o: drtrdrs8.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrdrs8.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtsptcs.h
+drtrims.o: drtrims.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrds.o: drtrds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtris.o: drtris.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtris.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrecs.o: drtrecs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrecs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtrlsds.o: drtrlsds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrlsds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrfgs.o: drtrfgs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrfgs.h \
+drtrmdrs.o: drtrmdrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrmdrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrbs2.h \
- ../include/dcmtk/dcmrt/seq/drtrcps.h \
- ../include/dcmtk/dcmrt/seq/drtrbas2.h
-drtrfors.o: drtrfors.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrfors.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrms.o: drtrms.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrms.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrsts.h \
- ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtcis.h
-drtrics.o: drtrics.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrics.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrmss6.o: drtrmss6.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrmss6.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtrims.o: drtrims.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrims.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrmss7.o: drtrmss7.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrmss7.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtris.o: drtris.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrpcs.o: drtrpcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrpcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtecs.h
-drtrlsds.o: drtrlsds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrlsds.h \
+drtrpis.o: drtrpis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrpis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrmdrs.o: drtrmdrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrmdrs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h
+drtrppcs.o: drtrppcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrppcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrms.o: drtrms.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrms.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtrpphs.o: drtrpphs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrpphs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrmss6.o: drtrmss6.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrmss6.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtdimrs.h \
+ ../include/dcmtk/dcmrt/seq/drtdirs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h \
+ ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
+ ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h
+drtrpps.o: drtrpps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrpps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrmss7.o: drtrmss7.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrmss7.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrecs.h
+drtrppss.o: drtrppss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrppss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrpcs.o: drtrpcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrpcs.h \
+drtrps.o: drtrps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtrpis.o: drtrpis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrpis.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrris1.o: drtrris1.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrris1.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h
-drtrppcs.o: drtrppcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrris6.o: drtrris6.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrris6.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtrpphs.o: drtrpphs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrpphs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrris9.o: drtrris9.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrris9.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtdimrs.h \
- ../include/dcmtk/dcmrt/seq/drtdirs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h \
- ../include/dcmtk/dcmrt/seq/drtwrsrs.h \
- ../include/dcmtk/dcmrt/seq/drtwrs.h ../include/dcmtk/dcmrt/seq/drtxrs.h
-drtrpps.o: drtrpps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrpps.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrrms.o: drtrrms.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrms.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrecs.h
-drtrppss.o: drtrppss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrppss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrros.o: drtrros.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrros.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrps.o: drtrps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrps.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrpps.h \
+ ../include/dcmtk/dcmrt/seq/drtrecs.h \
+ ../include/dcmtk/dcmrt/seq/drtrics.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtsptcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrrros.h \
+ ../include/dcmtk/dcmrt/seq/drtspccs.h
+drtrrpcs.o: drtrrpcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrris1.o: drtrris1.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrris1.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtrrros.o: drtrrros.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrros.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrris6.o: drtrris6.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrris6.h \
+drtrrs.o: drtrrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrris9.o: drtrris9.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrris9.h \
+drtrrshs.o: drtrrshs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrshs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrrms.o: drtrrms.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrms.h \
+drtrrtps.o: drtrrtps.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrros.o: drtrros.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrros.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrfgs.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs2.h \
+ ../include/dcmtk/dcmrt/seq/drtrcps.h \
+ ../include/dcmtk/dcmrt/seq/drtrbas2.h
+drtrrtps3.o: drtrrtps3.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps3.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtarics.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtrpps.h \
- ../include/dcmtk/dcmrt/seq/drtrecs.h \
- ../include/dcmtk/dcmrt/seq/drtrics.h ../include/dcmtk/dcmrt/seq/drtrrs.h \
- ../include/dcmtk/dcmrt/seq/drtrrros.h \
- ../include/dcmtk/dcmrt/seq/drtspccs.h
-drtrrpcs.o: drtrrpcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrpcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrrtps4.o: drtrrtps4.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps4.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtrrros.o: drtrrros.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrros.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrrtps5.o: drtrrtps5.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrrtps5.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrrs.o: drtrrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrs.h \
+drtrscs.o: drtrscs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrscs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrrshs.o: drtrrshs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrshs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtrsers.o: drtrsers.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrsers.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrrtps.o: drtrrtps.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtrses.o: drtrses.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrses.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrfgs.h \
- ../include/dcmtk/dcmrt/seq/drtrbs2.h \
- ../include/dcmtk/dcmrt/seq/drtrcps.h \
- ../include/dcmtk/dcmrt/seq/drtrbas2.h
-drtrrtps3.o: drtrrtps3.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps3.h \
+ ../include/dcmtk/dcmrt/seq/drtcis.h
+drtrshs.o: drtrshs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrrtps4.o: drtrrtps4.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps4.h \
+drtrshs6.o: drtrshs6.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs6.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrrtps5.o: drtrrtps5.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrrtps5.h \
+drtrshs7.o: drtrshs7.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrshs7.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrscs.o: drtrscs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrscs.h \
+drtrsis.o: drtrsis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrsis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtrsers.o: drtrsers.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrsers.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrsns.o: drtrsns.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrsns.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtris.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtrses.o: drtrses.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrses.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrsos.o: drtrsos.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h
-drtrshs.o: drtrshs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrshs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtrsrs.o: drtrsrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrsrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrshs6.o: drtrshs6.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrshs6.h \
+drtrss.o: drtrss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrshs7.o: drtrshs7.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrshs7.h \
+drtrsss.o: drtrsss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrsss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrsis.o: drtrsis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrsis.h \
+drtrsts.o: drtrsts.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrsts.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrsns.o: drtrsns.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrsns.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtcis.h
+drtrtrs2.o: drtrtrs2.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrtrs2.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrsos.o: drtrsos.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtrbs2.h \
+ ../include/dcmtk/dcmrt/seq/drtrcps.h
+drtrtrs4.o: drtrtrs4.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrtrs4.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrsrs.o: drtrsrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrsrs.h \
+drtrvis.o: drtrvis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrvis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrss.o: drtrss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrss.h \
+drtrws.o: drtrws.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrws.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrsss.o: drtrsss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrsss.h \
+drtrwvms.o: drtrwvms.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtrwvms.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrsts.o: drtrsts.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrsts.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
+ ../include/dcmtk/dcmrt/seq/drtqds.h ../include/dcmtk/dcmrt/seq/drtccs.h \
+ ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h
+drtscris.o: drtscris.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtcis.h
-drtrtrs2.o: drtrtrs2.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrtrs2.h \
+ ../include/dcmtk/dcmrt/seq/drtrsers.h \
+ ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtscs.o: drtscs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrbs2.h \
- ../include/dcmtk/dcmrt/seq/drtrcps.h
-drtrtrs4.o: drtrtrs4.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrtrs4.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtsdcs.o: drtsdcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrvis.o: drtrvis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrvis.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtsds.o: drtsds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtsds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrws.o: drtrws.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrws.h \
+drtshds.o: drtshds.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtshds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtrwvms.o: drtrwvms.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtrwvms.h \
+drtsins.o: drtsins.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h ../include/dcmtk/dcmrt/seq/drtecs.h \
- ../include/dcmtk/dcmrt/seq/drtqds.h ../include/dcmtk/dcmrt/seq/drtccs.h \
- ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h
-drtscris.o: drtscris.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtporcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtsis.o: drtsis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtsis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtecs.h
-drtsdcs.o: drtsdcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h \
+drtsns.o: drtsns.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtsns.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtsds.o: drtsds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtsds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtspccs.o: drtspccs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtspccs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtshds.o: drtshds.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtshds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtspcs.o: drtspcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtspcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtsis.o: drtsis.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpcxs.h \
+ ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtcncs.h \
+ ../include/dcmtk/dcmrt/seq/drtcims.h \
+ ../include/dcmtk/dcmrt/seq/drtmucs.h \
+ ../include/dcmtk/dcmrt/seq/drtrsos.h
+drtspgis.o: drtspgis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtporcs.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtsns.o: drtsns.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtsns.h \
+ ../include/dcmtk/dcmrt/seq/drtipiqs.h \
+ ../include/dcmtk/dcmrt/seq/drtaadcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtafs.h \
+ ../include/dcmtk/dcmrt/seq/drtajcs.h
+drtsptcs.o: drtsptcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtsptcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtspccs.o: drtspccs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtspccs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtss.o: drtss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h
-drtspcs.o: drtspcs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtspcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtssrcs.o: drtssrcs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpcxs.h \
- ../include/dcmtk/dcmrt/seq/drtccs.h ../include/dcmtk/dcmrt/seq/drtcncs.h \
- ../include/dcmtk/dcmrt/seq/drtcims.h \
- ../include/dcmtk/dcmrt/seq/drtmucs.h \
- ../include/dcmtk/dcmrt/seq/drtrsos.h
-drtss.o: drtss.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtss.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
+drtssrs.o: drtssrs.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtssrs.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
- ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
-drtssrs.o: drtssrs.cc ../../config/include/dcmtk/config/osconfig.h \
- ../include/dcmtk/dcmrt/seq/drtssrs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtecs.h
+drtsss.o: drtsss.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtsss.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../../ofstd/include/dcmtk/ofstd/ofdefine.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
- ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtecs.h
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h
drtstrct.o: drtstrct.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/drtstrct.h ../include/dcmtk/dcmrt/drttypes.h \
../../ofstd/include/dcmtk/ofstd/oftypes.h \
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
- ../include/dcmtk/dcmrt/seq/drteas.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h \
../include/dcmtk/dcmrt/seq/drtpsics.h \
../include/dcmtk/dcmrt/seq/drtpscs.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpsss.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrcs.h ../include/dcmtk/dcmrt/seq/drtcs.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h ../include/dcmtk/dcmrt/seq/drtrros.h \
- ../include/dcmtk/dcmrt/seq/drtarics.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h ../include/dcmtk/dcmrt/seq/drtrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h \
+ ../include/dcmtk/dcmrt/seq/drtrros.h \
../include/dcmtk/dcmrt/seq/drtrpps.h \
../include/dcmtk/dcmrt/seq/drtrecs.h \
- ../include/dcmtk/dcmrt/seq/drtrics.h ../include/dcmtk/dcmrt/seq/drtrrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrics.h \
+ ../include/dcmtk/dcmrt/seq/drtsptcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrrs.h \
../include/dcmtk/dcmrt/seq/drtrrros.h \
../include/dcmtk/dcmrt/seq/drtspccs.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
../include/dcmtk/dcmrt/seq/drtrfors.h \
../include/dcmtk/dcmrt/seq/drtrsts.h \
../include/dcmtk/dcmrt/seq/drtrses.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrps.h \
../include/dcmtk/dcmrt/seq/drtrppss.h \
../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrss.h \
- ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
+ ../include/dcmtk/dcmrt/seq/drtras.h \
../include/dcmtk/dcmrt/seq/drtrrpcs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h \
- ../include/dcmtk/dcmrt/seq/drtssrs.h ../include/dcmtk/dcmrt/seq/drtdcs.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtssrs.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h
drttms0.o: drttms0.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/seq/drttms0.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfgss.h \
../include/dcmtk/dcmrt/seq/drtfsss.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h \
../include/dcmtk/dcmrt/seq/drtpsics.h \
../include/dcmtk/dcmrt/seq/drtpscs.h \
../include/dcmtk/dcmrt/seq/drtporis.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrppss.h \
../include/dcmtk/dcmrt/seq/drtrrtps4.h \
../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrss.h \
../include/dcmtk/dcmrt/seq/drtrtrs4.h \
../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
../include/dcmtk/dcmrt/seq/drtrrpcs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../include/dcmtk/dcmrt/seq/drtscris.h \
../include/dcmtk/dcmrt/seq/drttscds.h \
- ../include/dcmtk/dcmrt/seq/drttsmds.h
+ ../include/dcmtk/dcmrt/seq/drttsmds.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h
drttscds.o: drttscds.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/seq/drttscds.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \
../include/dcmtk/dcmrt/seq/drtas7.h \
../include/dcmtk/dcmrt/seq/drtbldls.h \
+ ../include/dcmtk/dcmrt/seq/drtdddps.h \
../include/dcmtk/dcmrt/seq/drtgas.h \
../include/dcmtk/dcmrt/seq/drticpds.h \
../include/dcmtk/dcmrt/seq/drtbldps.h \
../include/dcmtk/dcmrt/seq/drtcpas.h \
../include/dcmtk/dcmrt/seq/drtiwps.h \
../include/dcmtk/dcmrt/seq/drtlsds7.h ../include/dcmtk/dcmrt/seq/drtos.h \
+ ../include/dcmtk/dcmrt/seq/drtois.h ../include/dcmtk/dcmrt/seq/drtics.h \
+ ../include/dcmtk/dcmrt/seq/drtecs.h ../include/dcmtk/dcmrt/seq/drtpics.h \
../include/dcmtk/dcmrt/seq/drtrmss7.h \
../include/dcmtk/dcmrt/seq/drtrshs7.h \
../include/dcmtk/dcmrt/seq/drtrbls.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
+drtudis.o: drtudis.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/dcmrt/drttypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctk.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcswap.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \
+ ../../ofstd/include/dcmtk/ofstd/ofglobal.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dclist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdicdir.h \
+ ../../ofstd/include/dcmtk/ofstd/ofmap.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdirrec.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrulup.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixseq.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcofsetl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrae.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdatime.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrur.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlo.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrlt.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpn.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrst.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvruc.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrut.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcpixel.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrpobw.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcovlay.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrat.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrss.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrus.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrsl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfl.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrfd.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrof.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrod.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcvrol.h \
+ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h
drtvls.o: drtvls.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/dcmrt/seq/drtvls.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
objs = drtdose.o drtimage.o drtplan.o drtstrct.o drttreat.o drtionpl.o drtiontr.o \
drmdose.o drmimage.o drmplan.o drmstrct.o drttypes.o \
- drtaadcs.o drtadcs.o drtads.o drtafs.o drtags.o drtajcs.o drtarics.o \
- drtas1.o drtas5.o drtas6.o drtas7.o drtass.o drtbads.o drtbas.o \
- drtbcps.o drtbl2.o drtbl5.o drtbldls.o drtbldps.o drtblds1.o drtblds5.o \
- drtblds6.o drtbldts.o drtbrcss.o drtbrdrs.o drtbrs.o drtbs.o drtbss.o \
- drtbvcps.o drtcbars.o drtccs.o drtcctus.o drtcdrs.o drtces.o drtchs.o \
+ drtaadcs.o drtadcs.o drtads.o drtafs.o drtags.o drtajcs.o drtas1.o \
+ drtas5.o drtas6.o drtas7.o drtass.o drtbads.o drtbas.o drtbcps.o \
+ drtbl2.o drtbl5.o drtbldls.o drtbldps.o drtblds1.o drtblds5.o drtblds6.o \
+ drtbldts.o drtbrcss.o drtbrdrs.o drtbrs.o drtbs.o drtbss.o drtbvcps.o \
+ drtcbars.o drtccs.o drtcctus.o drtcdrs.o drtces.o drtcgis.o drtchs.o \
drtcims.o drtcis.o drtcncs.o drtcos.o drtcpas.o drtcpis.o drtcps.o \
- drtcsas.o drtcs.o drtcshs.o drtcsis.o drtcss.o drtdcs.o drtdias.o \
- drtdimcs.o drtdimrs.o drtdirs.o drtdrs.o drtds.o drtdspcs.o drtdss.o \
- drtdvhs.o drtdvrrs.o drteas.o drtecs.o drtes.o drtfds.o drtfes.o drtfgs.o \
- drtfgss.o drtfms.o drtfsss.o drtgas.o drthsdrs.o drtiais.o drtians.o \
- drtiblds.o drtibls.o drtibs.o drticpds.o drticps.o drtics.o drtiis.o \
- drtipiqs.o drtircs.o drtiseis.o drtitts.o drtiwps.o drtiws.o drtlsds6.o \
- drtlsds7.o drtlsds.o drtmacds.o drtmas.o drtmdrs.o drtmls.o drtmps.o \
- drtmss.o drtmucs.o drtoas.o drtois.o drtopis.o drtos.o drtpbcs.o drtpcs.o \
- drtpcxs.o drtpdecs.o drtpfms.o drtpics.o drtporcs.o drtporis.o drtppcs.o \
- drtprsis.o drtpscs.o drtpsics.o drtpss.o drtpsss.o drtpvis.o drtqds.o \
- drtras.o drtrbas2.o drtrbas8.o drtrbls.o drtrbos1.o drtrbos6.o drtrbos7.o \
- drtrbs2.o drtrbs4.o drtrbs8.o drtrcdrs.o drtrcos.o drtrcps.o drtrcs.o \
- drtrdros.o drtrdrs1.o drtrdrs6.o drtrdrs8.o drtrds.o drtrecs.o drtrfgs.o \
- drtrfors.o drtrics.o drtrims.o drtris.o drtrlsds.o drtrmdrs.o drtrms.o \
- drtrmss6.o drtrmss7.o drtrpcs.o drtrpis.o drtrppcs.o drtrpphs.o drtrpps.o \
- drtrppss.o drtrps.o drtrris1.o drtrris6.o drtrris9.o drtrrms.o drtrros.o \
- drtrrpcs.o drtrrros.o drtrrs.o drtrrshs.o drtrrtps3.o drtrrtps4.o \
- drtrrtps5.o drtrrtps.o drtrscs.o drtrsers.o drtrses.o drtrshs6.o \
- drtrshs7.o drtrshs.o drtrsis.o drtrsns.o drtrsos.o drtrsrs.o drtrss.o \
- drtrsss.o drtrsts.o drtrtrs2.o drtrtrs4.o drtrvis.o drtrws.o drtrwvms.o \
- drtscris.o drtsdcs.o drtsds.o drtshds.o drtsis.o drtsns.o drtspccs.o \
- drtspcs.o drtss.o drtssrs.o drttms0.o drttms9.o drttscds.o drttsibs.o \
- drttsmds.o drttts.o drtvls.o drtwps.o drtwrs.o drtwrsrs.o drtws.o drtxrs.o
+ drtcsas.o drtcs.o drtcshs.o drtcsis.o drtcss.o drtdcs.o drtdddps.o \
+ drtddps.o drtdias.o drtdimcs.o drtdimrs.o drtdirs.o drtdrs.o drtds.o \
+ drtdspcs.o drtdss.o drtdvhs.o drtdvrrs.o drteas.o drtecs.o drtes.o \
+ drtfds.o drtfes.o drtfgs.o drtfgss.o drtfms.o drtfsss.o drtgas.o \
+ drtgpis.o drthsdrs.o drtiais.o drtians.o drtiblds.o drtibls.o drtibs.o \
+ drticpds.o drticps.o drtics.o drtiis.o drtipiqs.o drtircs.o drtiseis.o \
+ drtitts.o drtiwps.o drtiws.o drtlsds6.o drtlsds7.o drtlsds.o drtmacds.o \
+ drtmas.o drtmdrs.o drtmls.o drtmps.o drtmris.o drtmss.o drtmucs.o \
+ drtoas.o drtois.o drtopis.o drtos.o drtpbcs.o drtpcs.o drtpcxs.o \
+ drtpdecs.o drtpdeds.o drtpfms.o drtpics.o drtporcs.o drtporis.o \
+ drtppcs.o drtprsis.o drtpscs.o drtpsics.o drtpss.o drtpsss.o drtpvis.o \
+ drtqds.o drtras.o drtrbas2.o drtrbas8.o drtrbls.o drtrbos1.o drtrbos6.o \
+ drtrbos7.o drtrbs2.o drtrbs4.o drtrbs8.o drtrcdrs.o drtrcos.o drtrcps.o \
+ drtrcs.o drtrdros.o drtrdrs1.o drtrdrs6.o drtrdrs8.o drtrds.o drtrecs.o \
+ drtrfgs.o drtrfors.o drtrics.o drtrims.o drtris.o drtrlsds.o drtrmdrs.o \
+ drtrms.o drtrmss6.o drtrmss7.o drtrpcs.o drtrpis.o drtrppcs.o drtrpphs.o \
+ drtrpps.o drtrppss.o drtrps.o drtrris1.o drtrris6.o drtrris9.o drtrrms.o \
+ drtrros.o drtrrpcs.o drtrrros.o drtrrs.o drtrrshs.o drtrrtps3.o \
+ drtrrtps4.o drtrrtps5.o drtrrtps.o drtrscs.o drtrsers.o drtrses.o \
+ drtrshs6.o drtrshs7.o drtrshs.o drtrsis.o drtrsns.o drtrsos.o drtrsrs.o \
+ drtrss.o drtrsss.o drtrsts.o drtrtrs2.o drtrtrs4.o drtrvis.o drtrws.o \
+ drtrwvms.o drtscris.o drtscs.o drtsdcs.o drtsds.o drtshds.o drtsins.o \
+ drtsis.o drtsns.o drtspccs.o drtspcs.o drtspgis.o drtsptcs.o drtss.o \
+ drtssrcs.o drtssrs.o drtsss.o drttms0.o drttms9.o drttscds.o drttsibs.o \
+ drttsmds.o drttts.o drtudis.o drtvls.o drtwps.o drtwrs.o drtwrsrs.o \
+ drtws.o drtxrs.o
library = libdcmrt.$(LIBEXT)
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTAssigningAgencyOrDepartmentCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "AssigningAgencyOrDepartmentCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "AssigningAgencyOrDepartmentCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "AssigningAgencyOrDepartmentCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "AssigningAgencyOrDepartmentCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "AssigningAgencyOrDepartmentCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "AssigningAgencyOrDepartmentCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "AssigningAgencyOrDepartmentCodeSequence");
}
+OFCondition DRTAssigningAgencyOrDepartmentCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTAssigningAgencyOrDepartmentCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTAssigningAgencyOrDepartmentCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTAssigningAgencyOrDepartmentCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTAdmittingDiagnosesCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "AdmittingDiagnosesCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "AdmittingDiagnosesCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "AdmittingDiagnosesCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "AdmittingDiagnosesCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "AdmittingDiagnosesCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "AdmittingDiagnosesCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "AdmittingDiagnosesCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "AdmittingDiagnosesCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "AdmittingDiagnosesCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "AdmittingDiagnosesCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "AdmittingDiagnosesCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "AdmittingDiagnosesCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "AdmittingDiagnosesCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "AdmittingDiagnosesCodeSequence");
}
+OFCondition DRTAdmittingDiagnosesCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTAdmittingDiagnosesCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTAdmittingDiagnosesCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTAdmittingDiagnosesCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTAdditionalDrugSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "AdditionalDrugSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "AdditionalDrugSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "AdditionalDrugSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "AdditionalDrugSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "AdditionalDrugSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "AdditionalDrugSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "AdditionalDrugSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "AdditionalDrugSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "AdditionalDrugSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "AdditionalDrugSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "AdditionalDrugSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "AdditionalDrugSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "AdditionalDrugSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "AdditionalDrugSequence");
}
+OFCondition DRTAdditionalDrugSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTAdditionalDrugSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTAdditionalDrugSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTAdditionalDrugSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTAssigningFacilitySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTApplicatorGeometrySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTAssigningJurisdictionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "AssigningJurisdictionCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "AssigningJurisdictionCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "AssigningJurisdictionCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "AssigningJurisdictionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "AssigningJurisdictionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "AssigningJurisdictionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "AssigningJurisdictionCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "AssigningJurisdictionCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "AssigningJurisdictionCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "AssigningJurisdictionCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "AssigningJurisdictionCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "AssigningJurisdictionCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "AssigningJurisdictionCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "AssigningJurisdictionCodeSequence");
}
+OFCondition DRTAssigningJurisdictionCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTAssigningJurisdictionCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTAssigningJurisdictionCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTAssigningJurisdictionCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
+++ /dev/null
-/*
- *
- * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
- * All rights reserved. See COPYRIGHT file for details.
- *
- * Source file for class DRTAdditionalRTROIIdentificationCodeSequence
- *
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
- *
- */
-
-
-#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
-
-#include "dcmtk/dcmrt/seq/drtarics.h"
-
-
-// --- item class ---
-
-DRTAdditionalRTROIIdentificationCodeSequence::Item::Item(const OFBool emptyDefaultItem)
- : EmptyDefaultItem(emptyDefaultItem),
- CodeMeaning(DCM_CodeMeaning),
- CodeValue(DCM_CodeValue),
- CodingSchemeDesignator(DCM_CodingSchemeDesignator),
- CodingSchemeVersion(DCM_CodingSchemeVersion),
- ContextGroupExtensionCreatorUID(DCM_ContextGroupExtensionCreatorUID),
- ContextGroupExtensionFlag(DCM_ContextGroupExtensionFlag),
- ContextGroupLocalVersion(DCM_ContextGroupLocalVersion),
- ContextGroupVersion(DCM_ContextGroupVersion),
- ContextIdentifier(DCM_ContextIdentifier),
- ContextUID(DCM_ContextUID),
- EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
- LongCodeValue(DCM_LongCodeValue),
- MappingResource(DCM_MappingResource),
- MappingResourceUID(DCM_MappingResourceUID),
- PurposeOfReferenceCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
- URNCodeValue(DCM_URNCodeValue)
-{
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::Item::Item(const Item ©)
- : EmptyDefaultItem(copy.EmptyDefaultItem),
- CodeMeaning(copy.CodeMeaning),
- CodeValue(copy.CodeValue),
- CodingSchemeDesignator(copy.CodingSchemeDesignator),
- CodingSchemeVersion(copy.CodingSchemeVersion),
- ContextGroupExtensionCreatorUID(copy.ContextGroupExtensionCreatorUID),
- ContextGroupExtensionFlag(copy.ContextGroupExtensionFlag),
- ContextGroupLocalVersion(copy.ContextGroupLocalVersion),
- ContextGroupVersion(copy.ContextGroupVersion),
- ContextIdentifier(copy.ContextIdentifier),
- ContextUID(copy.ContextUID),
- EquivalentCodeSequence(copy.EquivalentCodeSequence),
- LongCodeValue(copy.LongCodeValue),
- MappingResource(copy.MappingResource),
- MappingResourceUID(copy.MappingResourceUID),
- PurposeOfReferenceCodeSequence(copy.PurposeOfReferenceCodeSequence),
- URNCodeValue(copy.URNCodeValue)
-{
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::Item::~Item()
-{
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::Item &DRTAdditionalRTROIIdentificationCodeSequence::Item::operator=(const Item ©)
-{
- if (this != ©)
- {
- EmptyDefaultItem = copy.EmptyDefaultItem;
- CodeMeaning = copy.CodeMeaning;
- CodeValue = copy.CodeValue;
- CodingSchemeDesignator = copy.CodingSchemeDesignator;
- CodingSchemeVersion = copy.CodingSchemeVersion;
- ContextGroupExtensionCreatorUID = copy.ContextGroupExtensionCreatorUID;
- ContextGroupExtensionFlag = copy.ContextGroupExtensionFlag;
- ContextGroupLocalVersion = copy.ContextGroupLocalVersion;
- ContextGroupVersion = copy.ContextGroupVersion;
- ContextIdentifier = copy.ContextIdentifier;
- ContextUID = copy.ContextUID;
- EquivalentCodeSequence = copy.EquivalentCodeSequence;
- LongCodeValue = copy.LongCodeValue;
- MappingResource = copy.MappingResource;
- MappingResourceUID = copy.MappingResourceUID;
- PurposeOfReferenceCodeSequence = copy.PurposeOfReferenceCodeSequence;
- URNCodeValue = copy.URNCodeValue;
- }
- return *this;
-}
-
-
-void DRTAdditionalRTROIIdentificationCodeSequence::Item::clear()
-{
- if (!EmptyDefaultItem)
- {
- /* clear all DICOM attributes */
- CodeValue.clear();
- CodingSchemeDesignator.clear();
- CodingSchemeVersion.clear();
- CodeMeaning.clear();
- LongCodeValue.clear();
- URNCodeValue.clear();
- EquivalentCodeSequence.clear();
- ContextIdentifier.clear();
- ContextUID.clear();
- MappingResource.clear();
- MappingResourceUID.clear();
- ContextGroupVersion.clear();
- ContextGroupExtensionFlag.clear();
- ContextGroupLocalVersion.clear();
- ContextGroupExtensionCreatorUID.clear();
- PurposeOfReferenceCodeSequence.clear();
- }
-}
-
-
-OFBool DRTAdditionalRTROIIdentificationCodeSequence::Item::isEmpty()
-{
- return CodeValue.isEmpty() &&
- CodingSchemeDesignator.isEmpty() &&
- CodingSchemeVersion.isEmpty() &&
- CodeMeaning.isEmpty() &&
- LongCodeValue.isEmpty() &&
- URNCodeValue.isEmpty() &&
- EquivalentCodeSequence.isEmpty() &&
- ContextIdentifier.isEmpty() &&
- ContextUID.isEmpty() &&
- MappingResource.isEmpty() &&
- MappingResourceUID.isEmpty() &&
- ContextGroupVersion.isEmpty() &&
- ContextGroupExtensionFlag.isEmpty() &&
- ContextGroupLocalVersion.isEmpty() &&
- ContextGroupExtensionCreatorUID.isEmpty() &&
- PurposeOfReferenceCodeSequence.isEmpty();
-}
-
-
-OFBool DRTAdditionalRTROIIdentificationCodeSequence::Item::isValid() const
-{
- return !EmptyDefaultItem;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::read(DcmItem &item)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- /* re-initialize object */
- clear();
- getAndCheckElementFromDataset(item, CodeValue, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, CodingSchemeDesignator, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, CodingSchemeVersion, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, CodeMeaning, "1", "1", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, LongCodeValue, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, URNCodeValue, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- EquivalentCodeSequence.read(item, "1-n", "3", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, ContextIdentifier, "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, ContextUID, "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- getAndCheckElementFromDataset(item, ContextGroupExtensionCreatorUID, "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- PurposeOfReferenceCodeSequence.read(item, "1-n", "1", "AdditionalRTROIIdentificationCodeSequence");
- result = EC_Normal;
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::write(DcmItem &item)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = EC_Normal;
- addElementToDataset(result, item, new DcmShortString(CodeValue), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmShortString(CodingSchemeDesignator), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmShortString(CodingSchemeVersion), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmLongString(CodeMeaning), "1", "1", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmUnlimitedCharacters(LongCodeValue), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmUniversalResourceIdentifierOrLocator(URNCodeValue), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- if (result.good()) result = EquivalentCodeSequence.write(item, "1-n", "3", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmCodeString(ContextIdentifier), "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- addElementToDataset(result, item, new DcmUniqueIdentifier(ContextGroupExtensionCreatorUID), "1", "1C", "AdditionalRTROIIdentificationCodeSequence");
- if (result.good()) result = PurposeOfReferenceCodeSequence.write(item, "1-n", "1", "AdditionalRTROIIdentificationCodeSequence");
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getCodeMeaning(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(CodeMeaning, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getCodeValue(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(CodeValue, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getCodingSchemeDesignator(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(CodingSchemeDesignator, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getCodingSchemeVersion(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(CodingSchemeVersion, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getContextGroupExtensionCreatorUID(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(ContextGroupExtensionCreatorUID, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getContextGroupExtensionFlag(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(ContextGroupExtensionFlag, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getContextGroupLocalVersion(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(ContextGroupLocalVersion, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getContextGroupVersion(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(ContextGroupVersion, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getContextIdentifier(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(ContextIdentifier, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getContextUID(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(ContextUID, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getLongCodeValue(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(LongCodeValue, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getMappingResource(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(MappingResource, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(MappingResourceUID, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::getURNCodeValue(OFString &value, const signed long pos) const
-{
- if (EmptyDefaultItem)
- return EC_IllegalCall;
- else
- return getStringValueFromElement(URNCodeValue, value, pos);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setCodeMeaning(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = CodeMeaning.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setCodeValue(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = CodeValue.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setCodingSchemeDesignator(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = CodingSchemeDesignator.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setCodingSchemeVersion(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = CodingSchemeVersion.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = ContextGroupExtensionCreatorUID.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setContextGroupExtensionFlag(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = ContextGroupExtensionFlag.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setContextGroupLocalVersion(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = ContextGroupLocalVersion.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setContextGroupVersion(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = ContextGroupVersion.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setContextIdentifier(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = ContextIdentifier.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setContextUID(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = ContextUID.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setLongCodeValue(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = LongCodeValue.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setMappingResource(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = MappingResource.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
- if (result.good())
- result = MappingResourceUID.putOFStringArray(value);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::Item::setURNCodeValue(const OFString &value, const OFBool check)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultItem)
- {
- result = (check) ? DcmUniversalResourceIdentifierOrLocator::checkStringValue(value) : EC_Normal;
- if (result.good())
- result = URNCodeValue.putOFStringArray(value);
- }
- return result;
-}
-
-
-// --- sequence class ---
-
-DRTAdditionalRTROIIdentificationCodeSequence::DRTAdditionalRTROIIdentificationCodeSequence(const OFBool emptyDefaultSequence)
- : EmptyDefaultSequence(emptyDefaultSequence),
- SequenceOfItems(),
- CurrentItem(),
- EmptyItem(OFTrue /*emptyDefaultItem*/)
-{
- CurrentItem = SequenceOfItems.end();
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::DRTAdditionalRTROIIdentificationCodeSequence(const DRTAdditionalRTROIIdentificationCodeSequence ©)
- : EmptyDefaultSequence(copy.EmptyDefaultSequence),
- SequenceOfItems(),
- CurrentItem(),
- EmptyItem(OFTrue /*emptyDefaultItem*/)
-{
- /* create a copy of the internal sequence of items */
- Item *item = NULL;
- OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
- const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
- while (current != last)
- {
- item = new Item(**current);
- if (item != NULL)
- {
- SequenceOfItems.push_back(item);
- } else {
- /* memory exhausted, there is nothing we can do about it */
- break;
- }
- ++current;
- }
- CurrentItem = SequenceOfItems.begin();
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence &DRTAdditionalRTROIIdentificationCodeSequence::operator=(const DRTAdditionalRTROIIdentificationCodeSequence ©)
-{
- if (this != ©)
- {
- clear();
- EmptyDefaultSequence = copy.EmptyDefaultSequence;
- /* create a copy of the internal sequence of items */
- Item *item = NULL;
- OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
- const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
- while (current != last)
- {
- item = new Item(**current);
- if (item != NULL)
- {
- SequenceOfItems.push_back(item);
- } else {
- /* memory exhausted, there is nothing we can do about it */
- break;
- }
- ++current;
- }
- CurrentItem = SequenceOfItems.begin();
- }
- return *this;
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::~DRTAdditionalRTROIIdentificationCodeSequence()
-{
- clear();
-}
-
-
-void DRTAdditionalRTROIIdentificationCodeSequence::clear()
-{
- if (!EmptyDefaultSequence)
- {
- CurrentItem = SequenceOfItems.begin();
- const OFListConstIterator(Item *) last = SequenceOfItems.end();
- /* delete all items and free memory */
- while (CurrentItem != last)
- {
- delete (*CurrentItem);
- CurrentItem = SequenceOfItems.erase(CurrentItem);
- }
- /* make sure that the list is empty */
- SequenceOfItems.clear();
- CurrentItem = SequenceOfItems.end();
- }
-}
-
-
-OFBool DRTAdditionalRTROIIdentificationCodeSequence::isEmpty()
-{
- return SequenceOfItems.empty();
-}
-
-
-OFBool DRTAdditionalRTROIIdentificationCodeSequence::isValid() const
-{
- return !EmptyDefaultSequence;
-}
-
-
-unsigned long DRTAdditionalRTROIIdentificationCodeSequence::getNumberOfItems() const
-{
- return SequenceOfItems.size();
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::gotoFirstItem()
-{
- OFCondition result = EC_IllegalCall;
- if (!SequenceOfItems.empty())
- {
- CurrentItem = SequenceOfItems.begin();
- result = EC_Normal;
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::gotoNextItem()
-{
- OFCondition result = EC_IllegalCall;
- if (CurrentItem != SequenceOfItems.end())
- {
- ++CurrentItem;
- result = EC_Normal;
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
-{
- OFCondition result = EC_IllegalCall;
- if (!SequenceOfItems.empty())
- {
- unsigned long idx = num + 1;
- iterator = SequenceOfItems.begin();
- const OFListConstIterator(Item *) last = SequenceOfItems.end();
- while ((--idx > 0) && (iterator != last))
- ++iterator;
- /* specified list item found? */
- if ((idx == 0) && (iterator != last))
- result = EC_Normal;
- else
- result = EC_IllegalParameter;
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
-{
- OFCondition result = EC_IllegalCall;
- if (!SequenceOfItems.empty())
- {
- unsigned long idx = num + 1;
- iterator = SequenceOfItems.begin();
- const OFListConstIterator(Item *) last = SequenceOfItems.end();
- while ((--idx > 0) && (iterator != last))
- ++iterator;
- /* specified list item found? */
- if ((idx == 0) && (iterator != last))
- result = EC_Normal;
- else
- result = EC_IllegalParameter;
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::gotoItem(const unsigned long num)
-{
- return gotoItem(num, CurrentItem);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::getCurrentItem(Item *&item) const
-{
- OFCondition result = EC_IllegalCall;
- if (CurrentItem != SequenceOfItems.end())
- {
- item = *CurrentItem;
- result = EC_Normal;
- }
- return result;
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::Item &DRTAdditionalRTROIIdentificationCodeSequence::getCurrentItem()
-{
- if (CurrentItem != SequenceOfItems.end())
- return **CurrentItem;
- else
- return EmptyItem;
-}
-
-
-const DRTAdditionalRTROIIdentificationCodeSequence::Item &DRTAdditionalRTROIIdentificationCodeSequence::getCurrentItem() const
-{
- if (CurrentItem != SequenceOfItems.end())
- return **CurrentItem;
- else
- return EmptyItem;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::getItem(const unsigned long num, Item *&item)
-{
- OFListIterator(Item *) iterator;
- OFCondition result = gotoItem(num, iterator);
- if (result.good())
- item = *iterator;
- return result;
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::Item &DRTAdditionalRTROIIdentificationCodeSequence::getItem(const unsigned long num)
-{
- OFListIterator(Item *) iterator;
- if (gotoItem(num, iterator).good())
- return **iterator;
- else
- return EmptyItem;
-}
-
-
-const DRTAdditionalRTROIIdentificationCodeSequence::Item &DRTAdditionalRTROIIdentificationCodeSequence::getItem(const unsigned long num) const
-{
- OFListConstIterator(Item *) iterator;
- if (gotoItem(num, iterator).good())
- return **iterator;
- else
- return EmptyItem;
-}
-
-
-DRTAdditionalRTROIIdentificationCodeSequence::Item &DRTAdditionalRTROIIdentificationCodeSequence::operator[](const unsigned long num)
-{
- return getItem(num);
-}
-
-
-const DRTAdditionalRTROIIdentificationCodeSequence::Item &DRTAdditionalRTROIIdentificationCodeSequence::operator[](const unsigned long num) const
-{
- return getItem(num);
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::addItem(Item *&item)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultSequence)
- {
- item = new Item();
- if (item != NULL)
- {
- SequenceOfItems.push_back(item);
- result = EC_Normal;
- } else
- result = EC_MemoryExhausted;
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::insertItem(const unsigned long pos, Item *&item)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultSequence)
- {
- OFListIterator(Item *) iterator;
- result = gotoItem(pos, iterator);
- if (result.good())
- {
- item = new Item();
- if (item != NULL)
- {
- SequenceOfItems.insert(iterator, 1, item);
- result = EC_Normal;
- } else
- result = EC_MemoryExhausted;
- } else
- result = addItem(item);
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::removeItem(const unsigned long pos)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultSequence)
- {
- OFListIterator(Item *) iterator;
- if (gotoItem(pos, iterator).good())
- {
- delete *iterator;
- iterator = SequenceOfItems.erase(iterator);
- result = EC_Normal;
- } else
- result = EC_IllegalParameter;
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::read(DcmItem &dataset,
- const OFString &card,
- const OFString &type,
- const char *moduleName)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultSequence)
- {
- /* re-initialize object */
- clear();
- /* retrieve sequence element from dataset */
- DcmSequenceOfItems *sequence;
- result = dataset.findAndGetSequence(DCM_AdditionalRTROIIdentificationCodeSequence, sequence);
- if (sequence != NULL)
- {
- if (checkElementValue(*sequence, card, type, result, moduleName))
- {
- DcmStack stack;
- OFBool first = OFTrue;
- /* iterate over all sequence items */
- while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
- {
- DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
- if (ditem != NULL)
- {
- Item *item = new Item();
- if (item != NULL)
- {
- result = item->read(*ditem);
- if (result.good())
- {
- /* append new item to the end of the list */
- SequenceOfItems.push_back(item);
- first = OFFalse;
- }
- } else
- result = EC_MemoryExhausted;
- } else
- result = EC_CorruptedData;
- }
- }
- } else {
- DcmSequenceOfItems element(DCM_AdditionalRTROIIdentificationCodeSequence);
- checkElementValue(element, card, type, result, moduleName);
- }
- }
- return result;
-}
-
-
-OFCondition DRTAdditionalRTROIIdentificationCodeSequence::write(DcmItem &dataset,
- const OFString &card,
- const OFString &type,
- const char *moduleName)
-{
- OFCondition result = EC_IllegalCall;
- if (!EmptyDefaultSequence)
- {
- result = EC_MemoryExhausted;
- DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_AdditionalRTROIIdentificationCodeSequence);
- if (sequence != NULL)
- {
- result = EC_Normal;
- /* an empty optional sequence is not written */
- if ((type == "2") || !SequenceOfItems.empty())
- {
- OFListIterator(Item *) iterator = SequenceOfItems.begin();
- const OFListConstIterator(Item *) last = SequenceOfItems.end();
- /* iterate over all sequence items */
- while (result.good() && (iterator != last))
- {
- DcmItem *item = new DcmItem();
- if (item != NULL)
- {
- /* append new item to the end of the sequence */
- result = sequence->append(item);
- if (result.good())
- {
- result = (*iterator)->write(*item);
- ++iterator;
- } else
- delete item;
- } else
- result = EC_MemoryExhausted;
- }
- if (result.good())
- {
- /* insert sequence element into the dataset */
- result = dataset.insert(sequence, OFTrue /*replaceOld*/);
- }
- if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
- checkElementValue(*sequence, card, type, result, moduleName);
- if (result.good())
- {
- /* forget reference to sequence object (avoid deletion below) */
- sequence = NULL;
- }
- }
- else if (type == "1")
- {
- /* empty type 1 sequence not allowed */
- result = RT_EC_InvalidValue;
- if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
- checkElementValue(*sequence, card, type, result, moduleName);
- }
- /* delete sequence (if not inserted into the dataset) */
- delete sequence;
- }
- }
- return result;
-}
-
-
-// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTApplicatorSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTApplicatorSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTApplicatorSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTApplicatorSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTApplicationSetupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBrachyAccessoryDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTContrastBolusAgentSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ContrastBolusAgentSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ContrastBolusAgentSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ContrastBolusAgentSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ContrastBolusAgentSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ContrastBolusAgentSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ContrastBolusAgentSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ContrastBolusAgentSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ContrastBolusAgentSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ContrastBolusAgentSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ContrastBolusAgentSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ContrastBolusAgentSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ContrastBolusAgentSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ContrastBolusAgentSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ContrastBolusAgentSequence");
}
+OFCondition DRTContrastBolusAgentSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTContrastBolusAgentSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTContrastBolusAgentSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTContrastBolusAgentSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBrachyControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBlockSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
BlockTrayID(DCM_BlockTrayID),
BlockType(DCM_BlockType),
MaterialID(DCM_MaterialID),
- SourceToBlockTrayDistance(DCM_SourceToBlockTrayDistance)
+ SourceToBlockTrayDistance(DCM_SourceToBlockTrayDistance),
+ TrayAccessoryCode(DCM_TrayAccessoryCode)
{
}
BlockTrayID(copy.BlockTrayID),
BlockType(copy.BlockType),
MaterialID(copy.MaterialID),
- SourceToBlockTrayDistance(copy.SourceToBlockTrayDistance)
+ SourceToBlockTrayDistance(copy.SourceToBlockTrayDistance),
+ TrayAccessoryCode(copy.TrayAccessoryCode)
{
}
BlockType = copy.BlockType;
MaterialID = copy.MaterialID;
SourceToBlockTrayDistance = copy.SourceToBlockTrayDistance;
+ TrayAccessoryCode = copy.TrayAccessoryCode;
}
return *this;
}
{
/* clear all DICOM attributes */
BlockTrayID.clear();
+ TrayAccessoryCode.clear();
AccessoryCode.clear();
SourceToBlockTrayDistance.clear();
BlockType.clear();
OFBool DRTBlockSequenceInRTBeamsModule::Item::isEmpty()
{
return BlockTrayID.isEmpty() &&
+ TrayAccessoryCode.isEmpty() &&
AccessoryCode.isEmpty() &&
SourceToBlockTrayDistance.isEmpty() &&
BlockType.isEmpty() &&
/* re-initialize object */
clear();
getAndCheckElementFromDataset(item, BlockTrayID, "1", "3", "BlockSequence");
+ getAndCheckElementFromDataset(item, TrayAccessoryCode, "1", "3", "BlockSequence");
getAndCheckElementFromDataset(item, AccessoryCode, "1", "3", "BlockSequence");
getAndCheckElementFromDataset(item, SourceToBlockTrayDistance, "1", "2", "BlockSequence");
getAndCheckElementFromDataset(item, BlockType, "1", "1", "BlockSequence");
{
result = EC_Normal;
addElementToDataset(result, item, new DcmShortString(BlockTrayID), "1", "3", "BlockSequence");
+ addElementToDataset(result, item, new DcmLongString(TrayAccessoryCode), "1", "3", "BlockSequence");
addElementToDataset(result, item, new DcmLongString(AccessoryCode), "1", "3", "BlockSequence");
addElementToDataset(result, item, new DcmDecimalString(SourceToBlockTrayDistance), "1", "2", "BlockSequence");
addElementToDataset(result, item, new DcmCodeString(BlockType), "1", "1", "BlockSequence");
}
+OFCondition DRTBlockSequenceInRTBeamsModule::Item::getTrayAccessoryCode(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(TrayAccessoryCode, value, pos);
+}
+
+
OFCondition DRTBlockSequenceInRTBeamsModule::Item::setAccessoryCode(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
}
+OFCondition DRTBlockSequenceInRTBeamsModule::Item::setTrayAccessoryCode(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = TrayAccessoryCode.putOFStringArray(value);
+ }
+ return result;
+}
+
+
// --- sequence class ---
DRTBlockSequenceInRTBeamsModule::DRTBlockSequenceInRTBeamsModule(const OFBool emptyDefaultSequence)
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBlockSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
BlockTrayID(DCM_BlockTrayID),
BlockType(DCM_BlockType),
MaterialID(DCM_MaterialID),
- SourceToBlockTrayDistance(DCM_SourceToBlockTrayDistance)
+ SourceToBlockTrayDistance(DCM_SourceToBlockTrayDistance),
+ TrayAccessoryCode(DCM_TrayAccessoryCode)
{
}
BlockTrayID(copy.BlockTrayID),
BlockType(copy.BlockType),
MaterialID(copy.MaterialID),
- SourceToBlockTrayDistance(copy.SourceToBlockTrayDistance)
+ SourceToBlockTrayDistance(copy.SourceToBlockTrayDistance),
+ TrayAccessoryCode(copy.TrayAccessoryCode)
{
}
BlockType = copy.BlockType;
MaterialID = copy.MaterialID;
SourceToBlockTrayDistance = copy.SourceToBlockTrayDistance;
+ TrayAccessoryCode = copy.TrayAccessoryCode;
}
return *this;
}
{
/* clear all DICOM attributes */
BlockTrayID.clear();
+ TrayAccessoryCode.clear();
AccessoryCode.clear();
SourceToBlockTrayDistance.clear();
BlockType.clear();
OFBool DRTBlockSequenceInRTImageModule::Item::isEmpty()
{
return BlockTrayID.isEmpty() &&
+ TrayAccessoryCode.isEmpty() &&
AccessoryCode.isEmpty() &&
SourceToBlockTrayDistance.isEmpty() &&
BlockType.isEmpty() &&
/* re-initialize object */
clear();
getAndCheckElementFromDataset(item, BlockTrayID, "1", "3", "BlockSequence");
+ getAndCheckElementFromDataset(item, TrayAccessoryCode, "1", "3", "BlockSequence");
getAndCheckElementFromDataset(item, AccessoryCode, "1", "3", "BlockSequence");
getAndCheckElementFromDataset(item, SourceToBlockTrayDistance, "1", "2", "BlockSequence");
getAndCheckElementFromDataset(item, BlockType, "1", "1", "BlockSequence");
{
result = EC_Normal;
addElementToDataset(result, item, new DcmShortString(BlockTrayID), "1", "3", "BlockSequence");
+ addElementToDataset(result, item, new DcmLongString(TrayAccessoryCode), "1", "3", "BlockSequence");
addElementToDataset(result, item, new DcmLongString(AccessoryCode), "1", "3", "BlockSequence");
addElementToDataset(result, item, new DcmDecimalString(SourceToBlockTrayDistance), "1", "2", "BlockSequence");
addElementToDataset(result, item, new DcmCodeString(BlockType), "1", "1", "BlockSequence");
}
+OFCondition DRTBlockSequenceInRTImageModule::Item::getTrayAccessoryCode(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(TrayAccessoryCode, value, pos);
+}
+
+
OFCondition DRTBlockSequenceInRTImageModule::Item::setAccessoryCode(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
}
+OFCondition DRTBlockSequenceInRTImageModule::Item::setTrayAccessoryCode(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = TrayAccessoryCode.putOFStringArray(value);
+ }
+ return result;
+}
+
+
// --- sequence class ---
DRTBlockSequenceInRTImageModule::DRTBlockSequenceInRTImageModule(const OFBool emptyDefaultSequence)
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBeamLimitingDeviceLeafPairsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBeamLimitingDevicePositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBeamLimitingDeviceSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBeamLimitingDeviceSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBeamLimitingDeviceSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBeamLimitingDeviceToleranceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBreedRegistryCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "BreedRegistryCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "BreedRegistryCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "BreedRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "BreedRegistryCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "BreedRegistryCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "BreedRegistryCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "BreedRegistryCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "BreedRegistryCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "BreedRegistryCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "BreedRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "BreedRegistryCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "BreedRegistryCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "BreedRegistryCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "BreedRegistryCodeSequence");
}
+OFCondition DRTBreedRegistryCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTBreedRegistryCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTBreedRegistryCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTBreedRegistryCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBrachyReferencedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBreedRegistrationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBeamSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTBlockSlabSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*
* Source file for class DRTBeamDoseVerificationControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
- * Last modified on 2016-02-20 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
AverageBeamDosePointDepth(DCM_AverageBeamDosePointDepth),
AverageBeamDosePointEquivalentDepth(DCM_AverageBeamDosePointEquivalentDepth),
AverageBeamDosePointSSD(DCM_AverageBeamDosePointSSD),
- AverageBeamDosePointSourceToExternalContourSurfaceDistance(DCM_AverageBeamDosePointSourceToExternalContourDistance),
+ AverageBeamDosePointSourceToExternalContourDistance(DCM_AverageBeamDosePointSourceToExternalContourDistance),
CumulativeMetersetWeight(DCM_CumulativeMetersetWeight),
ReferencedControlPointIndex(DCM_ReferencedControlPointIndex)
{
AverageBeamDosePointDepth(copy.AverageBeamDosePointDepth),
AverageBeamDosePointEquivalentDepth(copy.AverageBeamDosePointEquivalentDepth),
AverageBeamDosePointSSD(copy.AverageBeamDosePointSSD),
- AverageBeamDosePointSourceToExternalContourSurfaceDistance(copy.AverageBeamDosePointSourceToExternalContourSurfaceDistance),
+ AverageBeamDosePointSourceToExternalContourDistance(copy.AverageBeamDosePointSourceToExternalContourDistance),
CumulativeMetersetWeight(copy.CumulativeMetersetWeight),
ReferencedControlPointIndex(copy.ReferencedControlPointIndex)
{
AverageBeamDosePointDepth = copy.AverageBeamDosePointDepth;
AverageBeamDosePointEquivalentDepth = copy.AverageBeamDosePointEquivalentDepth;
AverageBeamDosePointSSD = copy.AverageBeamDosePointSSD;
- AverageBeamDosePointSourceToExternalContourSurfaceDistance = copy.AverageBeamDosePointSourceToExternalContourSurfaceDistance;
+ AverageBeamDosePointSourceToExternalContourDistance = copy.AverageBeamDosePointSourceToExternalContourDistance;
CumulativeMetersetWeight = copy.CumulativeMetersetWeight;
ReferencedControlPointIndex = copy.ReferencedControlPointIndex;
}
AverageBeamDosePointDepth.clear();
AverageBeamDosePointEquivalentDepth.clear();
AverageBeamDosePointSSD.clear();
- AverageBeamDosePointSourceToExternalContourSurfaceDistance.clear();
+ AverageBeamDosePointSourceToExternalContourDistance.clear();
}
}
AverageBeamDosePointDepth.isEmpty() &&
AverageBeamDosePointEquivalentDepth.isEmpty() &&
AverageBeamDosePointSSD.isEmpty() &&
- AverageBeamDosePointSourceToExternalContourSurfaceDistance.isEmpty();
+ AverageBeamDosePointSourceToExternalContourDistance.isEmpty();
}
getAndCheckElementFromDataset(item, AverageBeamDosePointDepth, "1", "2C", "BeamDoseVerificationControlPointSequence");
getAndCheckElementFromDataset(item, AverageBeamDosePointEquivalentDepth, "1", "2C", "BeamDoseVerificationControlPointSequence");
getAndCheckElementFromDataset(item, AverageBeamDosePointSSD, "1", "2C", "BeamDoseVerificationControlPointSequence");
- getAndCheckElementFromDataset(item, AverageBeamDosePointSourceToExternalContourSurfaceDistance, "1", "3", "BeamDoseVerificationControlPointSequence");
+ getAndCheckElementFromDataset(item, AverageBeamDosePointSourceToExternalContourDistance, "1", "3", "BeamDoseVerificationControlPointSequence");
result = EC_Normal;
}
return result;
addElementToDataset(result, item, new DcmFloatingPointSingle(AverageBeamDosePointDepth), "1", "2C", "BeamDoseVerificationControlPointSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(AverageBeamDosePointEquivalentDepth), "1", "2C", "BeamDoseVerificationControlPointSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(AverageBeamDosePointSSD), "1", "2C", "BeamDoseVerificationControlPointSequence");
- addElementToDataset(result, item, new DcmFloatingPointSingle(AverageBeamDosePointSourceToExternalContourSurfaceDistance), "1", "3", "BeamDoseVerificationControlPointSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(AverageBeamDosePointSourceToExternalContourDistance), "1", "3", "BeamDoseVerificationControlPointSequence");
}
return result;
}
}
-OFCondition DRTBeamDoseVerificationControlPointSequence::Item::getAverageBeamDosePointSourceToExternalContourSurfaceDistance(Float32 &value, const unsigned long pos) const
+OFCondition DRTBeamDoseVerificationControlPointSequence::Item::getAverageBeamDosePointSourceToExternalContourDistance(Float32 &value, const unsigned long pos) const
{
if (EmptyDefaultItem)
return EC_IllegalCall;
else
- return OFconst_cast(DcmFloatingPointSingle &, AverageBeamDosePointSourceToExternalContourSurfaceDistance).getFloat32(value, pos);
+ return OFconst_cast(DcmFloatingPointSingle &, AverageBeamDosePointSourceToExternalContourDistance).getFloat32(value, pos);
}
}
-OFCondition DRTBeamDoseVerificationControlPointSequence::Item::setAverageBeamDosePointSourceToExternalContourSurfaceDistance(const Float32 value, const unsigned long pos)
+OFCondition DRTBeamDoseVerificationControlPointSequence::Item::setAverageBeamDosePointSourceToExternalContourDistance(const Float32 value, const unsigned long pos)
{
if (EmptyDefaultItem)
return EC_IllegalCall;
else
- return AverageBeamDosePointSourceToExternalContourSurfaceDistance.putFloat32(value, pos);
+ return AverageBeamDosePointSourceToExternalContourDistance.putFloat32(value, pos);
}
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTContrastBolusAdministrationRouteSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ContrastBolusAdministrationRouteSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ContrastBolusAdministrationRouteSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ContrastBolusAdministrationRouteSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ContrastBolusAdministrationRouteSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ContrastBolusAdministrationRouteSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ContrastBolusAdministrationRouteSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ContrastBolusAdministrationRouteSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ContrastBolusAdministrationRouteSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ContrastBolusAdministrationRouteSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ContrastBolusAdministrationRouteSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ContrastBolusAdministrationRouteSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ContrastBolusAdministrationRouteSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ContrastBolusAdministrationRouteSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ContrastBolusAdministrationRouteSequence");
}
+OFCondition DRTContrastBolusAdministrationRouteSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTContrastBolusAdministrationRouteSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTContrastBolusAdministrationRouteSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTContrastBolusAdministrationRouteSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTConceptCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ConceptCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ConceptCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ConceptCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ConceptCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ConceptCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ConceptCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ConceptCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ConceptCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ConceptCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ConceptCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ConceptCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ConceptCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ConceptCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ConceptCodeSequence");
}
+OFCondition DRTConceptCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTConceptCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTConceptCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTConceptCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTConsentForClinicalTrialUseSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTCalculatedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTContributingEquipmentSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTContextGroupIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtcgis.h"
+
+
+// --- item class ---
+
+DRTContextGroupIdentificationSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ ContextGroupVersion(DCM_ContextGroupVersion),
+ ContextIdentifier(DCM_ContextIdentifier),
+ ContextUID(DCM_ContextUID),
+ MappingResource(DCM_MappingResource)
+{
+}
+
+
+DRTContextGroupIdentificationSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ ContextGroupVersion(copy.ContextGroupVersion),
+ ContextIdentifier(copy.ContextIdentifier),
+ ContextUID(copy.ContextUID),
+ MappingResource(copy.MappingResource)
+{
+}
+
+
+DRTContextGroupIdentificationSequence::Item::~Item()
+{
+}
+
+
+DRTContextGroupIdentificationSequence::Item &DRTContextGroupIdentificationSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ ContextGroupVersion = copy.ContextGroupVersion;
+ ContextIdentifier = copy.ContextIdentifier;
+ ContextUID = copy.ContextUID;
+ MappingResource = copy.MappingResource;
+ }
+ return *this;
+}
+
+
+void DRTContextGroupIdentificationSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ ContextIdentifier.clear();
+ ContextUID.clear();
+ MappingResource.clear();
+ ContextGroupVersion.clear();
+ }
+}
+
+
+OFBool DRTContextGroupIdentificationSequence::Item::isEmpty()
+{
+ return ContextIdentifier.isEmpty() &&
+ ContextUID.isEmpty() &&
+ MappingResource.isEmpty() &&
+ ContextGroupVersion.isEmpty();
+}
+
+
+OFBool DRTContextGroupIdentificationSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, ContextIdentifier, "1", "1", "ContextGroupIdentificationSequence");
+ getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ContextGroupIdentificationSequence");
+ getAndCheckElementFromDataset(item, MappingResource, "1", "1", "ContextGroupIdentificationSequence");
+ getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1", "ContextGroupIdentificationSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmCodeString(ContextIdentifier), "1", "1", "ContextGroupIdentificationSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ContextGroupIdentificationSequence");
+ addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1", "ContextGroupIdentificationSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1", "ContextGroupIdentificationSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::getContextGroupVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupVersion, value, pos);
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::getContextIdentifier(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextIdentifier, value, pos);
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::getContextUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextUID, value, pos);
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::getMappingResource(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResource, value, pos);
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::setContextGroupVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::setContextIdentifier(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextIdentifier.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::setContextUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::Item::setMappingResource(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResource.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTContextGroupIdentificationSequence::DRTContextGroupIdentificationSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTContextGroupIdentificationSequence::DRTContextGroupIdentificationSequence(const DRTContextGroupIdentificationSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTContextGroupIdentificationSequence &DRTContextGroupIdentificationSequence::operator=(const DRTContextGroupIdentificationSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTContextGroupIdentificationSequence::~DRTContextGroupIdentificationSequence()
+{
+ clear();
+}
+
+
+void DRTContextGroupIdentificationSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTContextGroupIdentificationSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTContextGroupIdentificationSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTContextGroupIdentificationSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTContextGroupIdentificationSequence::Item &DRTContextGroupIdentificationSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTContextGroupIdentificationSequence::Item &DRTContextGroupIdentificationSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTContextGroupIdentificationSequence::Item &DRTContextGroupIdentificationSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTContextGroupIdentificationSequence::Item &DRTContextGroupIdentificationSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTContextGroupIdentificationSequence::Item &DRTContextGroupIdentificationSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTContextGroupIdentificationSequence::Item &DRTContextGroupIdentificationSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_ContextGroupIdentificationSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_ContextGroupIdentificationSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTContextGroupIdentificationSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_ContextGroupIdentificationSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTChannelSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTContentItemModifierSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTContourImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTConceptNameCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ConceptNameCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ConceptNameCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ConceptNameCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ConceptNameCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ConceptNameCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ConceptNameCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ConceptNameCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ConceptNameCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ConceptNameCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ConceptNameCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ConceptNameCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ConceptNameCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ConceptNameCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ConceptNameCodeSequence");
}
+OFCondition DRTConceptNameCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTConceptNameCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTConceptNameCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTConceptNameCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTCompensatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
CompensatorType(DCM_CompensatorType),
MaterialID(DCM_MaterialID),
SourceToCompensatorDistance(DCM_SourceToCompensatorDistance),
- SourceToCompensatorTrayDistance(DCM_SourceToCompensatorTrayDistance)
+ SourceToCompensatorTrayDistance(DCM_SourceToCompensatorTrayDistance),
+ TrayAccessoryCode(DCM_TrayAccessoryCode)
{
}
CompensatorType(copy.CompensatorType),
MaterialID(copy.MaterialID),
SourceToCompensatorDistance(copy.SourceToCompensatorDistance),
- SourceToCompensatorTrayDistance(copy.SourceToCompensatorTrayDistance)
+ SourceToCompensatorTrayDistance(copy.SourceToCompensatorTrayDistance),
+ TrayAccessoryCode(copy.TrayAccessoryCode)
{
}
MaterialID = copy.MaterialID;
SourceToCompensatorDistance = copy.SourceToCompensatorDistance;
SourceToCompensatorTrayDistance = copy.SourceToCompensatorTrayDistance;
+ TrayAccessoryCode = copy.TrayAccessoryCode;
}
return *this;
}
CompensatorID.clear();
AccessoryCode.clear();
CompensatorTrayID.clear();
+ TrayAccessoryCode.clear();
SourceToCompensatorTrayDistance.clear();
CompensatorDivergence.clear();
CompensatorMountingPosition.clear();
CompensatorID.isEmpty() &&
AccessoryCode.isEmpty() &&
CompensatorTrayID.isEmpty() &&
+ TrayAccessoryCode.isEmpty() &&
SourceToCompensatorTrayDistance.isEmpty() &&
CompensatorDivergence.isEmpty() &&
CompensatorMountingPosition.isEmpty() &&
getAndCheckElementFromDataset(item, CompensatorID, "1", "3", "CompensatorSequence");
getAndCheckElementFromDataset(item, AccessoryCode, "1", "3", "CompensatorSequence");
getAndCheckElementFromDataset(item, CompensatorTrayID, "1", "3", "CompensatorSequence");
+ getAndCheckElementFromDataset(item, TrayAccessoryCode, "1", "3", "CompensatorSequence");
getAndCheckElementFromDataset(item, SourceToCompensatorTrayDistance, "1", "2", "CompensatorSequence");
getAndCheckElementFromDataset(item, CompensatorDivergence, "1", "3", "CompensatorSequence");
getAndCheckElementFromDataset(item, CompensatorMountingPosition, "1", "3", "CompensatorSequence");
addElementToDataset(result, item, new DcmShortString(CompensatorID), "1", "3", "CompensatorSequence");
addElementToDataset(result, item, new DcmLongString(AccessoryCode), "1", "3", "CompensatorSequence");
addElementToDataset(result, item, new DcmShortString(CompensatorTrayID), "1", "3", "CompensatorSequence");
+ addElementToDataset(result, item, new DcmLongString(TrayAccessoryCode), "1", "3", "CompensatorSequence");
addElementToDataset(result, item, new DcmDecimalString(SourceToCompensatorTrayDistance), "1", "2", "CompensatorSequence");
addElementToDataset(result, item, new DcmCodeString(CompensatorDivergence), "1", "3", "CompensatorSequence");
addElementToDataset(result, item, new DcmCodeString(CompensatorMountingPosition), "1", "3", "CompensatorSequence");
}
+OFCondition DRTCompensatorSequence::Item::getTrayAccessoryCode(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(TrayAccessoryCode, value, pos);
+}
+
+
OFCondition DRTCompensatorSequence::Item::setAccessoryCode(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
}
+OFCondition DRTCompensatorSequence::Item::setTrayAccessoryCode(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = TrayAccessoryCode.putOFStringArray(value);
+ }
+ return result;
+}
+
+
// --- sequence class ---
DRTCompensatorSequence::DRTCompensatorSequence(const OFBool emptyDefaultSequence)
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTCorrectedParameterSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTConsultingPhysicianIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTContourSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTConversionSourceAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTChannelShieldSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTCodingSchemeIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTChannelSourceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ChannelSourceSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ChannelSourceSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ChannelSourceSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ChannelSourceSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ChannelSourceSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ChannelSourceSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ChannelSourceSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ChannelSourceSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ChannelSourceSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ChannelSourceSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ChannelSourceSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ChannelSourceSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ChannelSourceSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ChannelSourceSequence");
}
+OFCondition DRTChannelSourceSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTChannelSourceSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTChannelSourceSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTChannelSourceSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDerivationCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "DerivationCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "DerivationCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "DerivationCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "DerivationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "DerivationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "DerivationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "DerivationCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "DerivationCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "DerivationCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "DerivationCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "DerivationCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "DerivationCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "DerivationCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "DerivationCodeSequence");
}
+OFCondition DRTDerivationCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTDerivationCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTDerivationCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTDerivationCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTDeliveredDepthDoseParametersSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtdddps.h"
+
+
+// --- item class ---
+
+DRTDeliveredDepthDoseParametersSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ DeliveredDistalDepth(DCM_DeliveredDistalDepth),
+ DeliveredDistalDepthFraction(DCM_DeliveredDistalDepthFraction),
+ DeliveredNominalRangeModulatedRegionDepths(DCM_DeliveredNominalRangeModulatedRegionDepths),
+ DeliveredNominalRangeModulationFractions(DCM_DeliveredNominalRangeModulationFractions),
+ DeliveredReferenceDoseDefinition(DCM_DeliveredReferenceDoseDefinition)
+{
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ DeliveredDistalDepth(copy.DeliveredDistalDepth),
+ DeliveredDistalDepthFraction(copy.DeliveredDistalDepthFraction),
+ DeliveredNominalRangeModulatedRegionDepths(copy.DeliveredNominalRangeModulatedRegionDepths),
+ DeliveredNominalRangeModulationFractions(copy.DeliveredNominalRangeModulationFractions),
+ DeliveredReferenceDoseDefinition(copy.DeliveredReferenceDoseDefinition)
+{
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::Item::~Item()
+{
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::Item &DRTDeliveredDepthDoseParametersSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ DeliveredDistalDepth = copy.DeliveredDistalDepth;
+ DeliveredDistalDepthFraction = copy.DeliveredDistalDepthFraction;
+ DeliveredNominalRangeModulatedRegionDepths = copy.DeliveredNominalRangeModulatedRegionDepths;
+ DeliveredNominalRangeModulationFractions = copy.DeliveredNominalRangeModulationFractions;
+ DeliveredReferenceDoseDefinition = copy.DeliveredReferenceDoseDefinition;
+ }
+ return *this;
+}
+
+
+void DRTDeliveredDepthDoseParametersSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ DeliveredReferenceDoseDefinition.clear();
+ DeliveredDistalDepth.clear();
+ DeliveredDistalDepthFraction.clear();
+ DeliveredNominalRangeModulatedRegionDepths.clear();
+ DeliveredNominalRangeModulationFractions.clear();
+ }
+}
+
+
+OFBool DRTDeliveredDepthDoseParametersSequence::Item::isEmpty()
+{
+ return DeliveredReferenceDoseDefinition.isEmpty() &&
+ DeliveredDistalDepth.isEmpty() &&
+ DeliveredDistalDepthFraction.isEmpty() &&
+ DeliveredNominalRangeModulatedRegionDepths.isEmpty() &&
+ DeliveredNominalRangeModulationFractions.isEmpty();
+}
+
+
+OFBool DRTDeliveredDepthDoseParametersSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, DeliveredReferenceDoseDefinition, "1", "1", "DeliveredDepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, DeliveredDistalDepth, "1", "1", "DeliveredDepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, DeliveredDistalDepthFraction, "1", "1", "DeliveredDepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, DeliveredNominalRangeModulatedRegionDepths, "2", "1C", "DeliveredDepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, DeliveredNominalRangeModulationFractions, "2", "1C", "DeliveredDepthDoseParametersSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmCodeString(DeliveredReferenceDoseDefinition), "1", "1", "DeliveredDepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(DeliveredDistalDepth), "1", "1", "DeliveredDepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(DeliveredDistalDepthFraction), "1", "1", "DeliveredDepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(DeliveredNominalRangeModulatedRegionDepths), "2", "1C", "DeliveredDepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(DeliveredNominalRangeModulationFractions), "2", "1C", "DeliveredDepthDoseParametersSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::getDeliveredDistalDepth(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, DeliveredDistalDepth).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::getDeliveredDistalDepthFraction(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, DeliveredDistalDepthFraction).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::getDeliveredNominalRangeModulatedRegionDepths(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, DeliveredNominalRangeModulatedRegionDepths).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::getDeliveredNominalRangeModulationFractions(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, DeliveredNominalRangeModulationFractions).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::getDeliveredReferenceDoseDefinition(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(DeliveredReferenceDoseDefinition, value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::setDeliveredDistalDepth(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DeliveredDistalDepth.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::setDeliveredDistalDepthFraction(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DeliveredDistalDepthFraction.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::setDeliveredNominalRangeModulatedRegionDepths(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DeliveredNominalRangeModulatedRegionDepths.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::setDeliveredNominalRangeModulationFractions(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DeliveredNominalRangeModulationFractions.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::Item::setDeliveredReferenceDoseDefinition(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = DeliveredReferenceDoseDefinition.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTDeliveredDepthDoseParametersSequence::DRTDeliveredDepthDoseParametersSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::DRTDeliveredDepthDoseParametersSequence(const DRTDeliveredDepthDoseParametersSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTDeliveredDepthDoseParametersSequence &DRTDeliveredDepthDoseParametersSequence::operator=(const DRTDeliveredDepthDoseParametersSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::~DRTDeliveredDepthDoseParametersSequence()
+{
+ clear();
+}
+
+
+void DRTDeliveredDepthDoseParametersSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTDeliveredDepthDoseParametersSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTDeliveredDepthDoseParametersSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTDeliveredDepthDoseParametersSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::Item &DRTDeliveredDepthDoseParametersSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTDeliveredDepthDoseParametersSequence::Item &DRTDeliveredDepthDoseParametersSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::Item &DRTDeliveredDepthDoseParametersSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTDeliveredDepthDoseParametersSequence::Item &DRTDeliveredDepthDoseParametersSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTDeliveredDepthDoseParametersSequence::Item &DRTDeliveredDepthDoseParametersSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTDeliveredDepthDoseParametersSequence::Item &DRTDeliveredDepthDoseParametersSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_DeliveredDepthDoseParametersSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_DeliveredDepthDoseParametersSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTDeliveredDepthDoseParametersSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_DeliveredDepthDoseParametersSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTDepthDoseParametersSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtddps.h"
+
+
+// --- item class ---
+
+DRTDepthDoseParametersSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ DistalDepth(DCM_DistalDepth),
+ DistalDepthFraction(DCM_DistalDepthFraction),
+ NominalRangeModulatedRegionDepths(DCM_NominalRangeModulatedRegionDepths),
+ NominalRangeModulationFractions(DCM_NominalRangeModulationFractions),
+ ReferenceDoseDefinition(DCM_ReferenceDoseDefinition)
+{
+}
+
+
+DRTDepthDoseParametersSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ DistalDepth(copy.DistalDepth),
+ DistalDepthFraction(copy.DistalDepthFraction),
+ NominalRangeModulatedRegionDepths(copy.NominalRangeModulatedRegionDepths),
+ NominalRangeModulationFractions(copy.NominalRangeModulationFractions),
+ ReferenceDoseDefinition(copy.ReferenceDoseDefinition)
+{
+}
+
+
+DRTDepthDoseParametersSequence::Item::~Item()
+{
+}
+
+
+DRTDepthDoseParametersSequence::Item &DRTDepthDoseParametersSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ DistalDepth = copy.DistalDepth;
+ DistalDepthFraction = copy.DistalDepthFraction;
+ NominalRangeModulatedRegionDepths = copy.NominalRangeModulatedRegionDepths;
+ NominalRangeModulationFractions = copy.NominalRangeModulationFractions;
+ ReferenceDoseDefinition = copy.ReferenceDoseDefinition;
+ }
+ return *this;
+}
+
+
+void DRTDepthDoseParametersSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ ReferenceDoseDefinition.clear();
+ DistalDepth.clear();
+ DistalDepthFraction.clear();
+ NominalRangeModulatedRegionDepths.clear();
+ NominalRangeModulationFractions.clear();
+ }
+}
+
+
+OFBool DRTDepthDoseParametersSequence::Item::isEmpty()
+{
+ return ReferenceDoseDefinition.isEmpty() &&
+ DistalDepth.isEmpty() &&
+ DistalDepthFraction.isEmpty() &&
+ NominalRangeModulatedRegionDepths.isEmpty() &&
+ NominalRangeModulationFractions.isEmpty();
+}
+
+
+OFBool DRTDepthDoseParametersSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, ReferenceDoseDefinition, "1", "1", "DepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, DistalDepth, "1", "1", "DepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, DistalDepthFraction, "1", "1", "DepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, NominalRangeModulatedRegionDepths, "2", "1C", "DepthDoseParametersSequence");
+ getAndCheckElementFromDataset(item, NominalRangeModulationFractions, "2", "1C", "DepthDoseParametersSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmCodeString(ReferenceDoseDefinition), "1", "1", "DepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(DistalDepth), "1", "1", "DepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(DistalDepthFraction), "1", "1", "DepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(NominalRangeModulatedRegionDepths), "2", "1C", "DepthDoseParametersSequence");
+ addElementToDataset(result, item, new DcmFloatingPointSingle(NominalRangeModulationFractions), "2", "1C", "DepthDoseParametersSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::getDistalDepth(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, DistalDepth).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::getDistalDepthFraction(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, DistalDepthFraction).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::getNominalRangeModulatedRegionDepths(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, NominalRangeModulatedRegionDepths).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::getNominalRangeModulationFractions(Float32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointSingle &, NominalRangeModulationFractions).getFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::getReferenceDoseDefinition(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ReferenceDoseDefinition, value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::setDistalDepth(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DistalDepth.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::setDistalDepthFraction(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DistalDepthFraction.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::setNominalRangeModulatedRegionDepths(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return NominalRangeModulatedRegionDepths.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::setNominalRangeModulationFractions(const Float32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return NominalRangeModulationFractions.putFloat32(value, pos);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::Item::setReferenceDoseDefinition(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ReferenceDoseDefinition.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTDepthDoseParametersSequence::DRTDepthDoseParametersSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTDepthDoseParametersSequence::DRTDepthDoseParametersSequence(const DRTDepthDoseParametersSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTDepthDoseParametersSequence &DRTDepthDoseParametersSequence::operator=(const DRTDepthDoseParametersSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTDepthDoseParametersSequence::~DRTDepthDoseParametersSequence()
+{
+ clear();
+}
+
+
+void DRTDepthDoseParametersSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTDepthDoseParametersSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTDepthDoseParametersSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTDepthDoseParametersSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTDepthDoseParametersSequence::Item &DRTDepthDoseParametersSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTDepthDoseParametersSequence::Item &DRTDepthDoseParametersSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTDepthDoseParametersSequence::Item &DRTDepthDoseParametersSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTDepthDoseParametersSequence::Item &DRTDepthDoseParametersSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTDepthDoseParametersSequence::Item &DRTDepthDoseParametersSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTDepthDoseParametersSequence::Item &DRTDepthDoseParametersSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_DepthDoseParametersSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_DepthDoseParametersSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTDepthDoseParametersSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_DepthDoseParametersSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDeidentificationActionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDeidentificationMethodCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "DeidentificationMethodCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "DeidentificationMethodCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "DeidentificationMethodCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "DeidentificationMethodCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "DeidentificationMethodCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "DeidentificationMethodCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "DeidentificationMethodCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "DeidentificationMethodCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "DeidentificationMethodCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "DeidentificationMethodCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "DeidentificationMethodCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "DeidentificationMethodCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "DeidentificationMethodCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "DeidentificationMethodCodeSequence");
}
+OFCondition DRTDeidentificationMethodCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTDeidentificationMethodCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTDeidentificationMethodCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTDeidentificationMethodCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDICOMMediaRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDICOMRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDoseIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
IssuerOfPatientID(DCM_IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(),
PatientBirthDate(DCM_PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(DCM_PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(DCM_PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(DCM_PatientAlternativeCalendar),
PatientSex(DCM_PatientSex),
ReferencedPatientPhotoSequence(),
QualityControlSubject(DCM_QualityControlSubject),
PatientBreedDescription(DCM_PatientBreedDescription),
PatientBreedCodeSequence(),
BreedRegistrationSequence(),
+ StrainDescription(DCM_StrainDescription),
+ StrainNomenclature(DCM_StrainNomenclature),
+ StrainCodeSequence(),
+ StrainAdditionalInformation(DCM_StrainAdditionalInformation),
+ StrainStockSequence(),
ResponsiblePerson(DCM_ResponsiblePerson),
ResponsiblePersonRole(DCM_ResponsiblePersonRole),
ResponsibleOrganization(DCM_ResponsibleOrganization),
PatientIdentityRemoved(DCM_PatientIdentityRemoved),
DeidentificationMethod(DCM_DeidentificationMethod),
DeidentificationMethodCodeSequence(),
+ SourcePatientGroupIdentificationSequence(),
+ GroupOfPatientsIdentificationSequence(),
ClinicalTrialSponsorName(DCM_ClinicalTrialSponsorName),
ClinicalTrialProtocolID(DCM_ClinicalTrialProtocolID),
ClinicalTrialProtocolName(DCM_ClinicalTrialProtocolName),
PatientAge(DCM_PatientAge),
PatientSize(DCM_PatientSize),
PatientWeight(DCM_PatientWeight),
+ PatientBodyMassIndex(DCM_PatientBodyMassIndex),
+ MeasuredAPDimension(DCM_MeasuredAPDimension),
+ MeasuredLateralDimension(DCM_MeasuredLateralDimension),
PatientSizeCodeSequence(),
+ MedicalAlerts(DCM_MedicalAlerts),
+ Allergies(DCM_Allergies),
+ SmokingStatus(DCM_SmokingStatus),
+ PregnancyStatus(DCM_PregnancyStatus),
+ LastMenstrualDate(DCM_LastMenstrualDate),
+ PatientState(DCM_PatientState),
Occupation(DCM_Occupation),
AdditionalPatientHistory(DCM_AdditionalPatientHistory),
AdmissionID(DCM_AdmissionID),
SeriesDescription(DCM_SeriesDescription),
SeriesDescriptionCodeSequence(),
OperatorsName(DCM_OperatorsName),
+ OperatorIdentificationSequence(),
ReferencedPerformedProcedureStepSequence(),
RequestAttributesSequence(),
PerformedProcedureStepID(DCM_PerformedProcedureStepID),
DeviceSerialNumber(DCM_DeviceSerialNumber),
SoftwareVersions(DCM_SoftwareVersions),
GantryID(DCM_GantryID),
+ UDISequence(),
SpatialResolution(DCM_SpatialResolution),
DateOfLastCalibration(DCM_DateOfLastCalibration),
TimeOfLastCalibration(DCM_TimeOfLastCalibration),
AcquisitionDate(DCM_AcquisitionDate),
AcquisitionTime(DCM_AcquisitionTime),
AcquisitionDateTime(DCM_AcquisitionDateTime),
- ReferencedImageSequence(),
- DerivationDescription(DCM_DerivationDescription),
- SourceImageSequence(),
ImagesInAcquisition(DCM_ImagesInAcquisition),
ImageComments(DCM_ImageComments),
QualityControlImage(DCM_QualityControlImage),
SliceLocation(DCM_SliceLocation),
Rows(DCM_Rows),
Columns(DCM_Columns),
- PixelData(DCM_PixelData),
PlanarConfiguration(DCM_PlanarConfiguration),
PixelAspectRatio(DCM_PixelAspectRatio),
SmallestImagePixelValue(DCM_SmallestImagePixelValue),
GreenPaletteColorLookupTableData(DCM_GreenPaletteColorLookupTableData),
BluePaletteColorLookupTableData(DCM_BluePaletteColorLookupTableData),
ICCProfile(DCM_ICCProfile),
+ ColorSpace(DCM_ColorSpace),
+ PixelData(DCM_PixelData),
PixelDataProviderURL(DCM_PixelDataProviderURL),
PixelPaddingRangeLimit(DCM_PixelPaddingRangeLimit),
NumberOfFrames(DCM_NumberOfFrames),
RelatedGeneralSOPClassUID(DCM_RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(DCM_OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(),
+ ContextGroupIdentificationSequence(),
+ MappingResourceIdentificationSequence(),
TimezoneOffsetFromUTC(DCM_TimezoneOffsetFromUTC),
ContributingEquipmentSequence(),
SOPInstanceStatus(DCM_SOPInstanceStatus),
IssuerOfPatientID(copy.IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
PatientBirthDate(copy.PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(copy.PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(copy.PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(copy.PatientAlternativeCalendar),
PatientSex(copy.PatientSex),
ReferencedPatientPhotoSequence(copy.ReferencedPatientPhotoSequence),
QualityControlSubject(copy.QualityControlSubject),
PatientBreedDescription(copy.PatientBreedDescription),
PatientBreedCodeSequence(copy.PatientBreedCodeSequence),
BreedRegistrationSequence(copy.BreedRegistrationSequence),
+ StrainDescription(copy.StrainDescription),
+ StrainNomenclature(copy.StrainNomenclature),
+ StrainCodeSequence(copy.StrainCodeSequence),
+ StrainAdditionalInformation(copy.StrainAdditionalInformation),
+ StrainStockSequence(copy.StrainStockSequence),
ResponsiblePerson(copy.ResponsiblePerson),
ResponsiblePersonRole(copy.ResponsiblePersonRole),
ResponsibleOrganization(copy.ResponsibleOrganization),
PatientIdentityRemoved(copy.PatientIdentityRemoved),
DeidentificationMethod(copy.DeidentificationMethod),
DeidentificationMethodCodeSequence(copy.DeidentificationMethodCodeSequence),
+ SourcePatientGroupIdentificationSequence(copy.SourcePatientGroupIdentificationSequence),
+ GroupOfPatientsIdentificationSequence(copy.GroupOfPatientsIdentificationSequence),
ClinicalTrialSponsorName(copy.ClinicalTrialSponsorName),
ClinicalTrialProtocolID(copy.ClinicalTrialProtocolID),
ClinicalTrialProtocolName(copy.ClinicalTrialProtocolName),
PatientAge(copy.PatientAge),
PatientSize(copy.PatientSize),
PatientWeight(copy.PatientWeight),
+ PatientBodyMassIndex(copy.PatientBodyMassIndex),
+ MeasuredAPDimension(copy.MeasuredAPDimension),
+ MeasuredLateralDimension(copy.MeasuredLateralDimension),
PatientSizeCodeSequence(copy.PatientSizeCodeSequence),
+ MedicalAlerts(copy.MedicalAlerts),
+ Allergies(copy.Allergies),
+ SmokingStatus(copy.SmokingStatus),
+ PregnancyStatus(copy.PregnancyStatus),
+ LastMenstrualDate(copy.LastMenstrualDate),
+ PatientState(copy.PatientState),
Occupation(copy.Occupation),
AdditionalPatientHistory(copy.AdditionalPatientHistory),
AdmissionID(copy.AdmissionID),
SeriesDescription(copy.SeriesDescription),
SeriesDescriptionCodeSequence(copy.SeriesDescriptionCodeSequence),
OperatorsName(copy.OperatorsName),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
ReferencedPerformedProcedureStepSequence(copy.ReferencedPerformedProcedureStepSequence),
RequestAttributesSequence(copy.RequestAttributesSequence),
PerformedProcedureStepID(copy.PerformedProcedureStepID),
DeviceSerialNumber(copy.DeviceSerialNumber),
SoftwareVersions(copy.SoftwareVersions),
GantryID(copy.GantryID),
+ UDISequence(copy.UDISequence),
SpatialResolution(copy.SpatialResolution),
DateOfLastCalibration(copy.DateOfLastCalibration),
TimeOfLastCalibration(copy.TimeOfLastCalibration),
AcquisitionDate(copy.AcquisitionDate),
AcquisitionTime(copy.AcquisitionTime),
AcquisitionDateTime(copy.AcquisitionDateTime),
- ReferencedImageSequence(copy.ReferencedImageSequence),
- DerivationDescription(copy.DerivationDescription),
- SourceImageSequence(copy.SourceImageSequence),
ImagesInAcquisition(copy.ImagesInAcquisition),
ImageComments(copy.ImageComments),
QualityControlImage(copy.QualityControlImage),
SliceLocation(copy.SliceLocation),
Rows(copy.Rows),
Columns(copy.Columns),
- PixelData(copy.PixelData),
PlanarConfiguration(copy.PlanarConfiguration),
PixelAspectRatio(copy.PixelAspectRatio),
SmallestImagePixelValue(copy.SmallestImagePixelValue),
GreenPaletteColorLookupTableData(copy.GreenPaletteColorLookupTableData),
BluePaletteColorLookupTableData(copy.BluePaletteColorLookupTableData),
ICCProfile(copy.ICCProfile),
+ ColorSpace(copy.ColorSpace),
+ PixelData(copy.PixelData),
PixelDataProviderURL(copy.PixelDataProviderURL),
PixelPaddingRangeLimit(copy.PixelPaddingRangeLimit),
NumberOfFrames(copy.NumberOfFrames),
RelatedGeneralSOPClassUID(copy.RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(copy.OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(copy.CodingSchemeIdentificationSequence),
+ ContextGroupIdentificationSequence(copy.ContextGroupIdentificationSequence),
+ MappingResourceIdentificationSequence(copy.MappingResourceIdentificationSequence),
TimezoneOffsetFromUTC(copy.TimezoneOffsetFromUTC),
ContributingEquipmentSequence(copy.ContributingEquipmentSequence),
SOPInstanceStatus(copy.SOPInstanceStatus),
IssuerOfPatientID = copy.IssuerOfPatientID;
IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
PatientBirthDate = copy.PatientBirthDate;
+ PatientBirthDateInAlternativeCalendar = copy.PatientBirthDateInAlternativeCalendar;
+ PatientDeathDateInAlternativeCalendar = copy.PatientDeathDateInAlternativeCalendar;
+ PatientAlternativeCalendar = copy.PatientAlternativeCalendar;
PatientSex = copy.PatientSex;
ReferencedPatientPhotoSequence = copy.ReferencedPatientPhotoSequence;
QualityControlSubject = copy.QualityControlSubject;
PatientBreedDescription = copy.PatientBreedDescription;
PatientBreedCodeSequence = copy.PatientBreedCodeSequence;
BreedRegistrationSequence = copy.BreedRegistrationSequence;
+ StrainDescription = copy.StrainDescription;
+ StrainNomenclature = copy.StrainNomenclature;
+ StrainCodeSequence = copy.StrainCodeSequence;
+ StrainAdditionalInformation = copy.StrainAdditionalInformation;
+ StrainStockSequence = copy.StrainStockSequence;
ResponsiblePerson = copy.ResponsiblePerson;
ResponsiblePersonRole = copy.ResponsiblePersonRole;
ResponsibleOrganization = copy.ResponsibleOrganization;
PatientIdentityRemoved = copy.PatientIdentityRemoved;
DeidentificationMethod = copy.DeidentificationMethod;
DeidentificationMethodCodeSequence = copy.DeidentificationMethodCodeSequence;
+ SourcePatientGroupIdentificationSequence = copy.SourcePatientGroupIdentificationSequence;
+ GroupOfPatientsIdentificationSequence = copy.GroupOfPatientsIdentificationSequence;
ClinicalTrialSponsorName = copy.ClinicalTrialSponsorName;
ClinicalTrialProtocolID = copy.ClinicalTrialProtocolID;
ClinicalTrialProtocolName = copy.ClinicalTrialProtocolName;
PatientAge = copy.PatientAge;
PatientSize = copy.PatientSize;
PatientWeight = copy.PatientWeight;
+ PatientBodyMassIndex = copy.PatientBodyMassIndex;
+ MeasuredAPDimension = copy.MeasuredAPDimension;
+ MeasuredLateralDimension = copy.MeasuredLateralDimension;
PatientSizeCodeSequence = copy.PatientSizeCodeSequence;
+ MedicalAlerts = copy.MedicalAlerts;
+ Allergies = copy.Allergies;
+ SmokingStatus = copy.SmokingStatus;
+ PregnancyStatus = copy.PregnancyStatus;
+ LastMenstrualDate = copy.LastMenstrualDate;
+ PatientState = copy.PatientState;
Occupation = copy.Occupation;
AdditionalPatientHistory = copy.AdditionalPatientHistory;
AdmissionID = copy.AdmissionID;
SeriesDescription = copy.SeriesDescription;
SeriesDescriptionCodeSequence = copy.SeriesDescriptionCodeSequence;
OperatorsName = copy.OperatorsName;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
ReferencedPerformedProcedureStepSequence = copy.ReferencedPerformedProcedureStepSequence;
RequestAttributesSequence = copy.RequestAttributesSequence;
PerformedProcedureStepID = copy.PerformedProcedureStepID;
DeviceSerialNumber = copy.DeviceSerialNumber;
SoftwareVersions = copy.SoftwareVersions;
GantryID = copy.GantryID;
+ UDISequence = copy.UDISequence;
SpatialResolution = copy.SpatialResolution;
DateOfLastCalibration = copy.DateOfLastCalibration;
TimeOfLastCalibration = copy.TimeOfLastCalibration;
AcquisitionDate = copy.AcquisitionDate;
AcquisitionTime = copy.AcquisitionTime;
AcquisitionDateTime = copy.AcquisitionDateTime;
- ReferencedImageSequence = copy.ReferencedImageSequence;
- DerivationDescription = copy.DerivationDescription;
- SourceImageSequence = copy.SourceImageSequence;
ImagesInAcquisition = copy.ImagesInAcquisition;
ImageComments = copy.ImageComments;
QualityControlImage = copy.QualityControlImage;
SliceLocation = copy.SliceLocation;
Rows = copy.Rows;
Columns = copy.Columns;
- PixelData = copy.PixelData;
PlanarConfiguration = copy.PlanarConfiguration;
PixelAspectRatio = copy.PixelAspectRatio;
SmallestImagePixelValue = copy.SmallestImagePixelValue;
GreenPaletteColorLookupTableData = copy.GreenPaletteColorLookupTableData;
BluePaletteColorLookupTableData = copy.BluePaletteColorLookupTableData;
ICCProfile = copy.ICCProfile;
+ ColorSpace = copy.ColorSpace;
+ PixelData = copy.PixelData;
PixelDataProviderURL = copy.PixelDataProviderURL;
PixelPaddingRangeLimit = copy.PixelPaddingRangeLimit;
NumberOfFrames = copy.NumberOfFrames;
RelatedGeneralSOPClassUID = copy.RelatedGeneralSOPClassUID;
OriginalSpecializedSOPClassUID = copy.OriginalSpecializedSOPClassUID;
CodingSchemeIdentificationSequence = copy.CodingSchemeIdentificationSequence;
+ ContextGroupIdentificationSequence = copy.ContextGroupIdentificationSequence;
+ MappingResourceIdentificationSequence = copy.MappingResourceIdentificationSequence;
TimezoneOffsetFromUTC = copy.TimezoneOffsetFromUTC;
ContributingEquipmentSequence = copy.ContributingEquipmentSequence;
SOPInstanceStatus = copy.SOPInstanceStatus;
IssuerOfPatientID.clear();
IssuerOfPatientIDQualifiersSequence.clear();
PatientBirthDate.clear();
+ PatientBirthDateInAlternativeCalendar.clear();
+ PatientDeathDateInAlternativeCalendar.clear();
+ PatientAlternativeCalendar.clear();
PatientSex.clear();
ReferencedPatientPhotoSequence.clear();
QualityControlSubject.clear();
PatientBreedDescription.clear();
PatientBreedCodeSequence.clear();
BreedRegistrationSequence.clear();
+ StrainDescription.clear();
+ StrainNomenclature.clear();
+ StrainCodeSequence.clear();
+ StrainAdditionalInformation.clear();
+ StrainStockSequence.clear();
ResponsiblePerson.clear();
ResponsiblePersonRole.clear();
ResponsibleOrganization.clear();
PatientIdentityRemoved.clear();
DeidentificationMethod.clear();
DeidentificationMethodCodeSequence.clear();
+ SourcePatientGroupIdentificationSequence.clear();
+ GroupOfPatientsIdentificationSequence.clear();
ClinicalTrialSponsorName.clear();
ClinicalTrialProtocolID.clear();
ClinicalTrialProtocolName.clear();
PatientAge.clear();
PatientSize.clear();
PatientWeight.clear();
+ PatientBodyMassIndex.clear();
+ MeasuredAPDimension.clear();
+ MeasuredLateralDimension.clear();
PatientSizeCodeSequence.clear();
+ MedicalAlerts.clear();
+ Allergies.clear();
+ SmokingStatus.clear();
+ PregnancyStatus.clear();
+ LastMenstrualDate.clear();
+ PatientState.clear();
Occupation.clear();
AdditionalPatientHistory.clear();
AdmissionID.clear();
SeriesDescription.clear();
SeriesDescriptionCodeSequence.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
ReferencedPerformedProcedureStepSequence.clear();
RequestAttributesSequence.clear();
PerformedProcedureStepID.clear();
DeviceSerialNumber.clear();
SoftwareVersions.clear();
GantryID.clear();
+ UDISequence.clear();
SpatialResolution.clear();
DateOfLastCalibration.clear();
TimeOfLastCalibration.clear();
AcquisitionDate.clear();
AcquisitionTime.clear();
AcquisitionDateTime.clear();
- ReferencedImageSequence.clear();
- DerivationDescription.clear();
- DerivationCodeSequence.clear();
- SourceImageSequence.clear();
- ReferencedInstanceSequence.clear();
ImagesInAcquisition.clear();
ImageComments.clear();
QualityControlImage.clear();
BitsStored.clear();
HighBit.clear();
PixelRepresentation.clear();
- PixelData.clear();
PlanarConfiguration.clear();
PixelAspectRatio.clear();
SmallestImagePixelValue.clear();
GreenPaletteColorLookupTableData.clear();
BluePaletteColorLookupTableData.clear();
ICCProfile.clear();
+ ColorSpace.clear();
+ PixelData.clear();
PixelDataProviderURL.clear();
PixelPaddingRangeLimit.clear();
NumberOfFrames.clear();
GridFrameOffsetVector.clear();
DoseGridScaling.clear();
TissueHeterogeneityCorrection.clear();
+ DerivationCodeSequence.clear();
+ ReferencedInstanceSequence.clear();
ReferencedStructureSetSequence.clear();
DVHNormalizationPoint.clear();
DVHNormalizationDoseValue.clear();
RelatedGeneralSOPClassUID.clear();
OriginalSpecializedSOPClassUID.clear();
CodingSchemeIdentificationSequence.clear();
+ ContextGroupIdentificationSequence.clear();
+ MappingResourceIdentificationSequence.clear();
TimezoneOffsetFromUTC.clear();
ContributingEquipmentSequence.clear();
SOPInstanceStatus.clear();
getAndCheckElementFromDataset(dataset, DeviceSerialNumber, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SoftwareVersions, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, GantryID, "1", "3", "GeneralEquipmentModule");
+ UDISequence.read(dataset, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SpatialResolution, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, DateOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, TimeOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, AcquisitionDate, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, AcquisitionTime, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, AcquisitionDateTime, "1", "3", "GeneralImageModule");
- ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralImageModule");
- getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralImageModule");
- // DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralImageModule");
- SourceImageSequence.read(dataset, "1-n", "3", "GeneralImageModule");
- // ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, ImagesInAcquisition, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, ImageComments, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, QualityControlImage, "1", "3", "GeneralImageModule");
// getAndCheckElementFromDataset(dataset, BitsStored, "1", "1", "ImagePixelModule");
// getAndCheckElementFromDataset(dataset, HighBit, "1", "1", "ImagePixelModule");
// getAndCheckElementFromDataset(dataset, PixelRepresentation, "1", "1", "ImagePixelModule");
- getAndCheckElementFromDataset(dataset, PixelData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PlanarConfiguration, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PixelAspectRatio, "2", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, SmallestImagePixelValue, "1", "3", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, GreenPaletteColorLookupTableData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, BluePaletteColorLookupTableData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, ICCProfile, "1", "3", "ImagePixelModule");
+ getAndCheckElementFromDataset(dataset, ColorSpace, "1", "3", "ImagePixelModule");
+ getAndCheckElementFromDataset(dataset, PixelData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PixelDataProviderURL, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PixelPaddingRangeLimit, "1", "1C", "ImagePixelModule");
}
getAndCheckElementFromDataset(dataset, RelatedGeneralSOPClassUID, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, OriginalSpecializedSOPClassUID, "1", "3", "SOPCommonModule");
CodingSchemeIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ ContextGroupIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ MappingResourceIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, TimezoneOffsetFromUTC, "1", "3", "SOPCommonModule");
ContributingEquipmentSequence.read(dataset, "1-n", "3", "SOPCommonModule");
// getAndCheckElementFromDataset(dataset, InstanceNumber, "1", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, IssuerOfPatientID, "1", "3", "PatientModule");
IssuerOfPatientIDQualifiersSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBirthDate, "1", "2", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientBirthDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientDeathDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientAlternativeCalendar, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientSex, "1", "2", "PatientModule");
ReferencedPatientPhotoSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, QualityControlSubject, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBreedDescription, "1", "2C", "PatientModule");
PatientBreedCodeSequence.read(dataset, "1-n", "2C", "PatientModule");
BreedRegistrationSequence.read(dataset, "1-n", "2C", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainDescription, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainNomenclature, "1", "3", "PatientModule");
+ StrainCodeSequence.read(dataset, "1-n", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainAdditionalInformation, "1", "3", "PatientModule");
+ StrainStockSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePerson, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePersonRole, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsibleOrganization, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientIdentityRemoved, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, DeidentificationMethod, "1-n", "1C", "PatientModule");
DeidentificationMethodCodeSequence.read(dataset, "1-n", "1C", "PatientModule");
+ SourcePatientGroupIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
+ GroupOfPatientsIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (dataset.tagExists(DCM_ClinicalTrialSponsorName) ||
getAndCheckElementFromDataset(dataset, PatientAge, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientSize, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientWeight, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientBodyMassIndex, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredAPDimension, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredLateralDimension, "1", "3", "PatientStudyModule");
PatientSizeCodeSequence.read(dataset, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MedicalAlerts, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, Allergies, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, SmokingStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PregnancyStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, LastMenstrualDate, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientState, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, Occupation, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdditionalPatientHistory, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdmissionID, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, SeriesDescription, "1", "3", "RTSeriesModule");
SeriesDescriptionCodeSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, OperatorsName, "1-n", "2", "RTSeriesModule");
+ OperatorIdentificationSequence.read(dataset, "1-n", "3", "RTSeriesModule");
ReferencedPerformedProcedureStepSequence.read(dataset, "1-n", "3", "RTSeriesModule");
RequestAttributesSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, PerformedProcedureStepID, "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(IssuerOfPatientID), "1", "3", "PatientModule");
if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmDate(PatientBirthDate), "1", "2", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientBirthDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientDeathDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmCodeString(PatientAlternativeCalendar), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientSex), "1", "2", "PatientModule");
if (result.good()) result = ReferencedPatientPhotoSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlSubject), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(PatientBreedDescription), "1", "2C", "PatientModule");
if (result.good()) result = PatientBreedCodeSequence.write(dataset, "1-n" ,"2C", "PatientModule");
if (result.good()) result = BreedRegistrationSequence.write(dataset, "1-n" ,"2C", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedCharacters(StrainDescription), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(StrainNomenclature), "1", "3", "PatientModule");
+ if (result.good()) result = StrainCodeSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedText(StrainAdditionalInformation), "1", "3", "PatientModule");
+ if (result.good()) result = StrainStockSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmPersonName(ResponsiblePerson), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(ResponsiblePersonRole), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(ResponsibleOrganization), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientIdentityRemoved), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(DeidentificationMethod), "1-n", "1C", "PatientModule");
if (result.good()) result = DeidentificationMethodCodeSequence.write(dataset, "1-n" ,"1C", "PatientModule");
+ if (result.good()) result = SourcePatientGroupIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ if (result.good()) result = GroupOfPatientsIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (isClinicalTrialSubjectModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmAgeString(PatientAge), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientSize), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientWeight), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(PatientBodyMassIndex), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredAPDimension), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredLateralDimension), "1", "3", "PatientStudyModule");
if (result.good()) result = PatientSizeCodeSequence.write(dataset, "1-n" ,"3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(MedicalAlerts), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(Allergies), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmCodeString(SmokingStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmUnsignedShort(PregnancyStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDate(LastMenstrualDate), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientState), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmShortString(Occupation), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongText(AdditionalPatientHistory), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(AdmissionID), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(SeriesDescription), "1", "3", "RTSeriesModule");
if (result.good()) result = SeriesDescriptionCodeSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmPersonName(OperatorsName), "1-n", "2", "RTSeriesModule");
+ if (result.good()) result = OperatorIdentificationSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = ReferencedPerformedProcedureStepSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = RequestAttributesSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmShortString(PerformedProcedureStepID), "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(DeviceSerialNumber), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(SoftwareVersions), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(GantryID), "1", "3", "GeneralEquipmentModule");
+ if (result.good()) result = UDISequence.write(dataset, "1-n" ,"3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDecimalString(SpatialResolution), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(DateOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmTime(TimeOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(AcquisitionDate), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmTime(AcquisitionTime), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmDateTime(AcquisitionDateTime), "1", "3", "GeneralImageModule");
- if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
- addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralImageModule");
- // if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
- if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
- // if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmIntegerString(ImagesInAcquisition), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmLongText(ImageComments), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlImage), "1", "3", "GeneralImageModule");
// addElementToDataset(result, dataset, new DcmUnsignedShort(BitsStored), "1", "1", "ImagePixelModule");
// addElementToDataset(result, dataset, new DcmUnsignedShort(HighBit), "1", "1", "ImagePixelModule");
// addElementToDataset(result, dataset, new DcmUnsignedShort(PixelRepresentation), "1", "1", "ImagePixelModule");
- addElementToDataset(result, dataset, new DcmPixelData(PixelData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUnsignedShort(PlanarConfiguration), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmIntegerString(PixelAspectRatio), "2", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUnsignedShort(SmallestImagePixelValue), "1", "3", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmOtherByteOtherWord(GreenPaletteColorLookupTableData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmOtherByteOtherWord(BluePaletteColorLookupTableData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmOtherByteOtherWord(ICCProfile), "1", "3", "ImagePixelModule");
+ addElementToDataset(result, dataset, new DcmCodeString(ColorSpace), "1", "3", "ImagePixelModule");
+ addElementToDataset(result, dataset, new DcmPixelData(PixelData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUniversalResourceIdentifierOrLocator(PixelDataProviderURL), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUnsignedShort(PixelPaddingRangeLimit), "1", "1C", "ImagePixelModule");
}
addElementToDataset(result, dataset, new DcmUniqueIdentifier(RelatedGeneralSOPClassUID), "1-n", "3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(OriginalSpecializedSOPClassUID), "1", "3", "SOPCommonModule");
if (result.good()) result = CodingSchemeIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = ContextGroupIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = MappingResourceIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmShortString(TimezoneOffsetFromUTC), "1", "3", "SOPCommonModule");
if (result.good()) result = ContributingEquipmentSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
// addElementToDataset(result, dataset, new DcmIntegerString(InstanceNumber), "1", "3", "SOPCommonModule");
!PatientAge.isEmpty() ||
!PatientSize.isEmpty() ||
!PatientWeight.isEmpty() ||
+ !PatientBodyMassIndex.isEmpty() ||
+ !MeasuredAPDimension.isEmpty() ||
+ !MeasuredLateralDimension.isEmpty() ||
!PatientSizeCodeSequence.isEmpty() ||
+ !MedicalAlerts.isEmpty() ||
+ !Allergies.isEmpty() ||
+ !SmokingStatus.isEmpty() ||
+ !PregnancyStatus.isEmpty() ||
+ !LastMenstrualDate.isEmpty() ||
+ !PatientState.isEmpty() ||
!Occupation.isEmpty() ||
!AdditionalPatientHistory.isEmpty() ||
!AdmissionID.isEmpty() ||
!AcquisitionDate.isEmpty() ||
!AcquisitionTime.isEmpty() ||
!AcquisitionDateTime.isEmpty() ||
- !ReferencedImageSequence.isEmpty() ||
- !DerivationDescription.isEmpty() ||
- !SourceImageSequence.isEmpty() ||
!ImagesInAcquisition.isEmpty() ||
!ImageComments.isEmpty() ||
!QualityControlImage.isEmpty() ||
/* check whether at least one attribute is present */
return !Rows.isEmpty() ||
!Columns.isEmpty() ||
- !PixelData.isEmpty() ||
!PlanarConfiguration.isEmpty() ||
!PixelAspectRatio.isEmpty() ||
!SmallestImagePixelValue.isEmpty() ||
!GreenPaletteColorLookupTableData.isEmpty() ||
!BluePaletteColorLookupTableData.isEmpty() ||
!ICCProfile.isEmpty() ||
+ !ColorSpace.isEmpty() ||
+ !PixelData.isEmpty() ||
!PixelDataProviderURL.isEmpty() ||
!PixelPaddingRangeLimit.isEmpty();
}
}
+OFCondition DRTDoseIOD::getAllergies(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(Allergies, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getAuthorizationEquipmentCertificationNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(AuthorizationEquipmentCertificationNumber, value, pos);
}
+OFCondition DRTDoseIOD::getColorSpace(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(ColorSpace, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getColumns(Uint16 &value, const unsigned long pos) const
{
return OFconst_cast(DcmUnsignedShort &, Columns).getUint16(value, pos);
}
-OFCondition DRTDoseIOD::getDerivationDescription(OFString &value, const signed long pos) const
-{
- return getStringValueFromElement(DerivationDescription, value, pos);
-}
-
-
OFCondition DRTDoseIOD::getDeviceSerialNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(DeviceSerialNumber, value, pos);
}
+OFCondition DRTDoseIOD::getLastMenstrualDate(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(LastMenstrualDate, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getLongitudinalTemporalInformationModified(OFString &value, const signed long pos) const
{
return getStringValueFromElement(LongitudinalTemporalInformationModified, value, pos);
}
+OFCondition DRTDoseIOD::getMeasuredAPDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredAPDimension, value, pos);
+}
+
+
+OFCondition DRTDoseIOD::getMeasuredAPDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredAPDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTDoseIOD::getMeasuredLateralDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredLateralDimension, value, pos);
+}
+
+
+OFCondition DRTDoseIOD::getMeasuredLateralDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredLateralDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTDoseIOD::getMedicalAlerts(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MedicalAlerts, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getModality(OFString &value, const signed long pos) const
{
return getStringValueFromElement(Modality, value, pos);
}
+OFCondition DRTDoseIOD::getPatientAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getPatientBirthDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthDate, value, pos);
}
+OFCondition DRTDoseIOD::getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBirthDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getPatientBirthTime(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthTime, value, pos);
}
+OFCondition DRTDoseIOD::getPatientBodyMassIndex(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBodyMassIndex, value, pos);
+}
+
+
+OFCondition DRTDoseIOD::getPatientBodyMassIndex(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, PatientBodyMassIndex).getFloat64(value, pos);
+}
+
+
OFCondition DRTDoseIOD::getPatientBreedDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBreedDescription, value, pos);
}
+OFCondition DRTDoseIOD::getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientDeathDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getPatientID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientID, value, pos);
}
+OFCondition DRTDoseIOD::getPatientState(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientState, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getPatientWeight(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientWeight, value, pos);
}
+OFCondition DRTDoseIOD::getPregnancyStatus(Uint16 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmUnsignedShort &, PregnancyStatus).getUint16(value, pos);
+}
+
+
OFCondition DRTDoseIOD::getPresentationLUTShape(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PresentationLUTShape, value, pos);
}
+OFCondition DRTDoseIOD::getSmokingStatus(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(SmokingStatus, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getSoftwareVersions(OFString &value, const signed long pos) const
{
return getStringValueFromElement(SoftwareVersions, value, pos);
}
+OFCondition DRTDoseIOD::getStrainAdditionalInformation(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainAdditionalInformation, value, pos);
+}
+
+
+OFCondition DRTDoseIOD::getStrainDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainDescription, value, pos);
+}
+
+
+OFCondition DRTDoseIOD::getStrainNomenclature(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainNomenclature, value, pos);
+}
+
+
OFCondition DRTDoseIOD::getStructureSetDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(StructureSetDate, value, pos);
}
+OFCondition DRTDoseIOD::setAllergies(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = Allergies.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setAuthorizationEquipmentCertificationNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setColorSpace(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ColorSpace.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setColumns(const Uint16 value, const unsigned long pos)
{
return Columns.putUint16(value, pos);
}
-OFCondition DRTDoseIOD::setDerivationDescription(const OFString &value, const OFBool check)
-{
- OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
- if (result.good())
- result = DerivationDescription.putOFStringArray(value);
- return result;
-}
-
-
OFCondition DRTDoseIOD::setDeviceSerialNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setLastMenstrualDate(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LastMenstrualDate.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setLongitudinalTemporalInformationModified(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setMeasuredAPDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredAPDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTDoseIOD::setMeasuredLateralDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredLateralDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTDoseIOD::setMedicalAlerts(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = MedicalAlerts.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setModality(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setPatientAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setPatientBirthDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBirthDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setPatientBirthTime(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setPatientBodyMassIndex(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBodyMassIndex.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setPatientBreedDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientDeathDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setPatientID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setPatientState(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientState.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setPatientWeight(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setPregnancyStatus(const Uint16 value, const unsigned long pos)
+{
+ return PregnancyStatus.putUint16(value, pos);
+}
+
+
OFCondition DRTDoseIOD::setPresentationLUTShape(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTDoseIOD::setSmokingStatus(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = SmokingStatus.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setSoftwareVersions(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
}
+OFCondition DRTDoseIOD::setStrainAdditionalInformation(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = StrainAdditionalInformation.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTDoseIOD::setStrainDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainDescription.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTDoseIOD::setStrainNomenclature(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainNomenclature.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTDoseIOD::setStructureSetDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
Manufacturer(DCM_Manufacturer),
ManufacturerModelName(DCM_ManufacturerModelName),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
Manufacturer(copy.Manufacturer),
ManufacturerModelName(copy.ManufacturerModelName),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
Manufacturer = copy.Manufacturer;
ManufacturerModelName = copy.ManufacturerModelName;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "DeviceSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "DeviceSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "DeviceSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "DeviceSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "DeviceSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "DeviceSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "DeviceSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "DeviceSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "DeviceSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "DeviceSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "DeviceSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "DeviceSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "DeviceSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "DeviceSequence");
}
+OFCondition DRTDeviceSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTDeviceSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTDeviceSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTDeviceSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDigitalSignaturePurposeCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "DigitalSignaturePurposeCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "DigitalSignaturePurposeCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "DigitalSignaturePurposeCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "DigitalSignaturePurposeCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "DigitalSignaturePurposeCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "DigitalSignaturePurposeCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "DigitalSignaturePurposeCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "DigitalSignaturePurposeCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "DigitalSignaturePurposeCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "DigitalSignaturePurposeCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "DigitalSignaturePurposeCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "DigitalSignaturePurposeCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "DigitalSignaturePurposeCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "DigitalSignaturePurposeCodeSequence");
}
+OFCondition DRTDigitalSignaturePurposeCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTDigitalSignaturePurposeCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTDigitalSignaturePurposeCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTDigitalSignaturePurposeCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDigitalSignaturesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDVHSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTDVHReferencedROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTEncryptedAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTEquivalentCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
CodeValue(DCM_CodeValue),
CodingSchemeDesignator(DCM_CodingSchemeDesignator),
CodingSchemeVersion(DCM_CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(DCM_ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(DCM_ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(DCM_ContextGroupLocalVersion),
+ ContextGroupVersion(DCM_ContextGroupVersion),
+ ContextIdentifier(DCM_ContextIdentifier),
+ ContextUID(DCM_ContextUID),
LongCodeValue(DCM_LongCodeValue),
+ MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
+ MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
}
CodeValue(copy.CodeValue),
CodingSchemeDesignator(copy.CodingSchemeDesignator),
CodingSchemeVersion(copy.CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(copy.ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(copy.ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(copy.ContextGroupLocalVersion),
+ ContextGroupVersion(copy.ContextGroupVersion),
+ ContextIdentifier(copy.ContextIdentifier),
+ ContextUID(copy.ContextUID),
LongCodeValue(copy.LongCodeValue),
+ MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
+ MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
}
CodeValue = copy.CodeValue;
CodingSchemeDesignator = copy.CodingSchemeDesignator;
CodingSchemeVersion = copy.CodingSchemeVersion;
+ ContextGroupExtensionCreatorUID = copy.ContextGroupExtensionCreatorUID;
+ ContextGroupExtensionFlag = copy.ContextGroupExtensionFlag;
+ ContextGroupLocalVersion = copy.ContextGroupLocalVersion;
+ ContextGroupVersion = copy.ContextGroupVersion;
+ ContextIdentifier = copy.ContextIdentifier;
+ ContextUID = copy.ContextUID;
LongCodeValue = copy.LongCodeValue;
+ MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
+ MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
return *this;
CodeMeaning.clear();
LongCodeValue.clear();
URNCodeValue.clear();
+ ContextIdentifier.clear();
+ ContextUID.clear();
+ MappingResource.clear();
+ MappingResourceUID.clear();
+ MappingResourceName.clear();
+ ContextGroupVersion.clear();
+ ContextGroupExtensionFlag.clear();
+ ContextGroupLocalVersion.clear();
+ ContextGroupExtensionCreatorUID.clear();
}
}
CodingSchemeVersion.isEmpty() &&
CodeMeaning.isEmpty() &&
LongCodeValue.isEmpty() &&
- URNCodeValue.isEmpty();
+ URNCodeValue.isEmpty() &&
+ ContextIdentifier.isEmpty() &&
+ ContextUID.isEmpty() &&
+ MappingResource.isEmpty() &&
+ MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
+ ContextGroupVersion.isEmpty() &&
+ ContextGroupExtensionFlag.isEmpty() &&
+ ContextGroupLocalVersion.isEmpty() &&
+ ContextGroupExtensionCreatorUID.isEmpty();
}
getAndCheckElementFromDataset(item, CodeMeaning, "1", "1", "EquivalentCodeSequence");
getAndCheckElementFromDataset(item, LongCodeValue, "1", "1C", "EquivalentCodeSequence");
getAndCheckElementFromDataset(item, URNCodeValue, "1", "1C", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, ContextIdentifier, "1", "3", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, ContextUID, "1", "3", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "EquivalentCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionCreatorUID, "1", "1C", "EquivalentCodeSequence");
result = EC_Normal;
}
return result;
addElementToDataset(result, item, new DcmLongString(CodeMeaning), "1", "1", "EquivalentCodeSequence");
addElementToDataset(result, item, new DcmUnlimitedCharacters(LongCodeValue), "1", "1C", "EquivalentCodeSequence");
addElementToDataset(result, item, new DcmUniversalResourceIdentifierOrLocator(URNCodeValue), "1", "1C", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextIdentifier), "1", "3", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "EquivalentCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextGroupExtensionCreatorUID), "1", "1C", "EquivalentCodeSequence");
}
return result;
}
}
+OFCondition DRTEquivalentCodeSequence::Item::getContextGroupExtensionCreatorUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionCreatorUID, value, pos);
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::getContextGroupExtensionFlag(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionFlag, value, pos);
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::getContextGroupLocalVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupLocalVersion, value, pos);
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::getContextGroupVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupVersion, value, pos);
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::getContextIdentifier(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextIdentifier, value, pos);
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::getContextUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextUID, value, pos);
+}
+
+
OFCondition DRTEquivalentCodeSequence::Item::getLongCodeValue(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTEquivalentCodeSequence::Item::getMappingResource(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResource, value, pos);
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceUID, value, pos);
+}
+
+
OFCondition DRTEquivalentCodeSequence::Item::getURNCodeValue(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTEquivalentCodeSequence::Item::setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionCreatorUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::setContextGroupExtensionFlag(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionFlag.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::setContextGroupLocalVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupLocalVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::setContextGroupVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::setContextIdentifier(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextIdentifier.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::setContextUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTEquivalentCodeSequence::Item::setLongCodeValue(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
}
+OFCondition DRTEquivalentCodeSequence::Item::setMappingResource(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResource.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTEquivalentCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTEquivalentCodeSequence::Item::setURNCodeValue(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTExposureSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTFixationDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTFrameExtractionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTFractionGroupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTFractionGroupSummarySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTFluenceMapSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTFractionStatusSummarySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTGeneralAccessorySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTGroupOfPatientsIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtgpis.h"
+
+
+// --- item class ---
+
+DRTGroupOfPatientsIdentificationSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ IssuerOfPatientID(DCM_IssuerOfPatientID),
+ IssuerOfPatientIDQualifiersSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ PatientID(DCM_PatientID),
+ PatientPosition(DCM_PatientPosition),
+ SubjectRelativePositionInImage(DCM_SubjectRelativePositionInImage)
+{
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ IssuerOfPatientID(copy.IssuerOfPatientID),
+ IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
+ PatientID(copy.PatientID),
+ PatientPosition(copy.PatientPosition),
+ SubjectRelativePositionInImage(copy.SubjectRelativePositionInImage)
+{
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::Item::~Item()
+{
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::Item &DRTGroupOfPatientsIdentificationSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ IssuerOfPatientID = copy.IssuerOfPatientID;
+ IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
+ PatientID = copy.PatientID;
+ PatientPosition = copy.PatientPosition;
+ SubjectRelativePositionInImage = copy.SubjectRelativePositionInImage;
+ }
+ return *this;
+}
+
+
+void DRTGroupOfPatientsIdentificationSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ PatientID.clear();
+ IssuerOfPatientID.clear();
+ IssuerOfPatientIDQualifiersSequence.clear();
+ SubjectRelativePositionInImage.clear();
+ PatientPosition.clear();
+ }
+}
+
+
+OFBool DRTGroupOfPatientsIdentificationSequence::Item::isEmpty()
+{
+ return PatientID.isEmpty() &&
+ IssuerOfPatientID.isEmpty() &&
+ IssuerOfPatientIDQualifiersSequence.isEmpty() &&
+ SubjectRelativePositionInImage.isEmpty() &&
+ PatientPosition.isEmpty();
+}
+
+
+OFBool DRTGroupOfPatientsIdentificationSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, PatientID, "1", "1", "GroupOfPatientsIdentificationSequence");
+ getAndCheckElementFromDataset(item, IssuerOfPatientID, "1", "3", "GroupOfPatientsIdentificationSequence");
+ IssuerOfPatientIDQualifiersSequence.read(item, "1-n", "3", "GroupOfPatientsIdentificationSequence");
+ getAndCheckElementFromDataset(item, SubjectRelativePositionInImage, "3", "3", "GroupOfPatientsIdentificationSequence");
+ getAndCheckElementFromDataset(item, PatientPosition, "1", "3", "GroupOfPatientsIdentificationSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmLongString(PatientID), "1", "1", "GroupOfPatientsIdentificationSequence");
+ addElementToDataset(result, item, new DcmLongString(IssuerOfPatientID), "1", "3", "GroupOfPatientsIdentificationSequence");
+ if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(item, "1-n", "3", "GroupOfPatientsIdentificationSequence");
+ addElementToDataset(result, item, new DcmUnsignedShort(SubjectRelativePositionInImage), "3", "3", "GroupOfPatientsIdentificationSequence");
+ addElementToDataset(result, item, new DcmCodeString(PatientPosition), "1", "3", "GroupOfPatientsIdentificationSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::getIssuerOfPatientID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(IssuerOfPatientID, value, pos);
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::getPatientID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PatientID, value, pos);
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::getPatientPosition(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PatientPosition, value, pos);
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::getSubjectRelativePositionInImage(Uint16 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmUnsignedShort &, SubjectRelativePositionInImage).getUint16(value, pos);
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::setIssuerOfPatientID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = IssuerOfPatientID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::setPatientID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::setPatientPosition(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientPosition.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::Item::setSubjectRelativePositionInImage(const Uint16 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return SubjectRelativePositionInImage.putUint16(value, pos);
+}
+
+
+// --- sequence class ---
+
+DRTGroupOfPatientsIdentificationSequence::DRTGroupOfPatientsIdentificationSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::DRTGroupOfPatientsIdentificationSequence(const DRTGroupOfPatientsIdentificationSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTGroupOfPatientsIdentificationSequence &DRTGroupOfPatientsIdentificationSequence::operator=(const DRTGroupOfPatientsIdentificationSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::~DRTGroupOfPatientsIdentificationSequence()
+{
+ clear();
+}
+
+
+void DRTGroupOfPatientsIdentificationSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTGroupOfPatientsIdentificationSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTGroupOfPatientsIdentificationSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTGroupOfPatientsIdentificationSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::Item &DRTGroupOfPatientsIdentificationSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTGroupOfPatientsIdentificationSequence::Item &DRTGroupOfPatientsIdentificationSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::Item &DRTGroupOfPatientsIdentificationSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTGroupOfPatientsIdentificationSequence::Item &DRTGroupOfPatientsIdentificationSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTGroupOfPatientsIdentificationSequence::Item &DRTGroupOfPatientsIdentificationSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTGroupOfPatientsIdentificationSequence::Item &DRTGroupOfPatientsIdentificationSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_GroupOfPatientsIdentificationSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_GroupOfPatientsIdentificationSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTGroupOfPatientsIdentificationSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_GroupOfPatientsIdentificationSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTHL7StructuredDocumentReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIssuerOfAdmissionIDSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIssuerOfAccessionNumberSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonBeamLimitingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonBlockSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonBeamSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
BeamName(DCM_BeamName),
BeamNumber(DCM_BeamNumber),
BeamType(DCM_BeamType),
+ DepthDoseParametersSequence(emptyDefaultItem /*emptyDefaultSequence*/),
DeviceSerialNumber(DCM_DeviceSerialNumber),
FinalCumulativeMetersetWeight(DCM_FinalCumulativeMetersetWeight),
+ FixationEye(DCM_FixationEye),
FixationLightAzimuthalAngle(DCM_FixationLightAzimuthalAngle),
FixationLightPolarAngle(DCM_FixationLightPolarAngle),
GeneralAccessorySequence(emptyDefaultItem /*emptyDefaultSequence*/),
LateralSpreadingDeviceSequence(emptyDefaultItem /*emptyDefaultSequence*/),
Manufacturer(DCM_Manufacturer),
ManufacturerModelName(DCM_ManufacturerModelName),
+ ModulatedScanModeType(DCM_ModulatedScanModeType),
NumberOfBlocks(DCM_NumberOfBlocks),
NumberOfBoli(DCM_NumberOfBoli),
NumberOfCompensators(DCM_NumberOfCompensators),
BeamName(copy.BeamName),
BeamNumber(copy.BeamNumber),
BeamType(copy.BeamType),
+ DepthDoseParametersSequence(copy.DepthDoseParametersSequence),
DeviceSerialNumber(copy.DeviceSerialNumber),
FinalCumulativeMetersetWeight(copy.FinalCumulativeMetersetWeight),
+ FixationEye(copy.FixationEye),
FixationLightAzimuthalAngle(copy.FixationLightAzimuthalAngle),
FixationLightPolarAngle(copy.FixationLightPolarAngle),
GeneralAccessorySequence(copy.GeneralAccessorySequence),
LateralSpreadingDeviceSequence(copy.LateralSpreadingDeviceSequence),
Manufacturer(copy.Manufacturer),
ManufacturerModelName(copy.ManufacturerModelName),
+ ModulatedScanModeType(copy.ModulatedScanModeType),
NumberOfBlocks(copy.NumberOfBlocks),
NumberOfBoli(copy.NumberOfBoli),
NumberOfCompensators(copy.NumberOfCompensators),
BeamName = copy.BeamName;
BeamNumber = copy.BeamNumber;
BeamType = copy.BeamType;
+ DepthDoseParametersSequence = copy.DepthDoseParametersSequence;
DeviceSerialNumber = copy.DeviceSerialNumber;
FinalCumulativeMetersetWeight = copy.FinalCumulativeMetersetWeight;
+ FixationEye = copy.FixationEye;
FixationLightAzimuthalAngle = copy.FixationLightAzimuthalAngle;
FixationLightPolarAngle = copy.FixationLightPolarAngle;
GeneralAccessorySequence = copy.GeneralAccessorySequence;
LateralSpreadingDeviceSequence = copy.LateralSpreadingDeviceSequence;
Manufacturer = copy.Manufacturer;
ManufacturerModelName = copy.ManufacturerModelName;
+ ModulatedScanModeType = copy.ModulatedScanModeType;
NumberOfBlocks = copy.NumberOfBlocks;
NumberOfBoli = copy.NumberOfBoli;
NumberOfCompensators = copy.NumberOfCompensators;
RadiationAtomicNumber.clear();
RadiationChargeState.clear();
ScanMode.clear();
+ ModulatedScanModeType.clear();
TreatmentMachineName.clear();
Manufacturer.clear();
InstitutionName.clear();
PrimaryDosimeterUnit.clear();
ReferencedToleranceTableNumber.clear();
VirtualSourceAxisDistances.clear();
+ DepthDoseParametersSequence.clear();
IonBeamLimitingDeviceSequence.clear();
ReferencedPatientSetupNumber.clear();
ReferencedReferenceImageSequence.clear();
PatientSupportAccessoryCode.clear();
FixationLightAzimuthalAngle.clear();
FixationLightPolarAngle.clear();
+ FixationEye.clear();
FinalCumulativeMetersetWeight.clear();
NumberOfControlPoints.clear();
IonControlPointSequence.clear();
RadiationAtomicNumber.isEmpty() &&
RadiationChargeState.isEmpty() &&
ScanMode.isEmpty() &&
+ ModulatedScanModeType.isEmpty() &&
TreatmentMachineName.isEmpty() &&
Manufacturer.isEmpty() &&
InstitutionName.isEmpty() &&
PrimaryDosimeterUnit.isEmpty() &&
ReferencedToleranceTableNumber.isEmpty() &&
VirtualSourceAxisDistances.isEmpty() &&
+ DepthDoseParametersSequence.isEmpty() &&
IonBeamLimitingDeviceSequence.isEmpty() &&
ReferencedPatientSetupNumber.isEmpty() &&
ReferencedReferenceImageSequence.isEmpty() &&
PatientSupportAccessoryCode.isEmpty() &&
FixationLightAzimuthalAngle.isEmpty() &&
FixationLightPolarAngle.isEmpty() &&
+ FixationEye.isEmpty() &&
FinalCumulativeMetersetWeight.isEmpty() &&
NumberOfControlPoints.isEmpty() &&
IonControlPointSequence.isEmpty();
getAndCheckElementFromDataset(item, RadiationAtomicNumber, "1", "1C", "IonBeamSequence");
getAndCheckElementFromDataset(item, RadiationChargeState, "1", "1C", "IonBeamSequence");
getAndCheckElementFromDataset(item, ScanMode, "1", "1", "IonBeamSequence");
+ getAndCheckElementFromDataset(item, ModulatedScanModeType, "1", "1C", "IonBeamSequence");
getAndCheckElementFromDataset(item, TreatmentMachineName, "1", "2", "IonBeamSequence");
getAndCheckElementFromDataset(item, Manufacturer, "1", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, InstitutionName, "1", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, PrimaryDosimeterUnit, "1", "1", "IonBeamSequence");
getAndCheckElementFromDataset(item, ReferencedToleranceTableNumber, "1", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, VirtualSourceAxisDistances, "2", "1", "IonBeamSequence");
+ DepthDoseParametersSequence.read(item, "1-n", "3", "IonBeamSequence");
IonBeamLimitingDeviceSequence.read(item, "1-n", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, ReferencedPatientSetupNumber, "1", "3", "IonBeamSequence");
ReferencedReferenceImageSequence.read(item, "1-n", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, PatientSupportAccessoryCode, "1", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, FixationLightAzimuthalAngle, "1", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, FixationLightPolarAngle, "1", "3", "IonBeamSequence");
+ getAndCheckElementFromDataset(item, FixationEye, "1", "3", "IonBeamSequence");
getAndCheckElementFromDataset(item, FinalCumulativeMetersetWeight, "1", "1C", "IonBeamSequence");
getAndCheckElementFromDataset(item, NumberOfControlPoints, "1", "1", "IonBeamSequence");
IonControlPointSequence.read(item, "1-n", "1", "IonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(RadiationAtomicNumber), "1", "1C", "IonBeamSequence");
addElementToDataset(result, item, new DcmSignedShort(RadiationChargeState), "1", "1C", "IonBeamSequence");
addElementToDataset(result, item, new DcmCodeString(ScanMode), "1", "1", "IonBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(ModulatedScanModeType), "1", "1C", "IonBeamSequence");
addElementToDataset(result, item, new DcmShortString(TreatmentMachineName), "1", "2", "IonBeamSequence");
addElementToDataset(result, item, new DcmLongString(Manufacturer), "1", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmLongString(InstitutionName), "1", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmCodeString(PrimaryDosimeterUnit), "1", "1", "IonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(ReferencedToleranceTableNumber), "1", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(VirtualSourceAxisDistances), "2", "1", "IonBeamSequence");
+ if (result.good()) result = DepthDoseParametersSequence.write(item, "1-n", "3", "IonBeamSequence");
if (result.good()) result = IonBeamLimitingDeviceSequence.write(item, "1-n", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(ReferencedPatientSetupNumber), "1", "3", "IonBeamSequence");
if (result.good()) result = ReferencedReferenceImageSequence.write(item, "1-n", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmLongString(PatientSupportAccessoryCode), "1", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(FixationLightAzimuthalAngle), "1", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(FixationLightPolarAngle), "1", "3", "IonBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(FixationEye), "1", "3", "IonBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(FinalCumulativeMetersetWeight), "1", "1C", "IonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(NumberOfControlPoints), "1", "1", "IonBeamSequence");
if (result.good()) result = IonControlPointSequence.write(item, "1-n", "1", "IonBeamSequence");
}
+OFCondition DRTIonBeamSequence::Item::getFixationEye(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(FixationEye, value, pos);
+}
+
+
OFCondition DRTIonBeamSequence::Item::getFixationLightAzimuthalAngle(Float32 &value, const unsigned long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonBeamSequence::Item::getModulatedScanModeType(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ModulatedScanModeType, value, pos);
+}
+
+
OFCondition DRTIonBeamSequence::Item::getNumberOfBlocks(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonBeamSequence::Item::setFixationEye(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = FixationEye.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonBeamSequence::Item::setFixationLightAzimuthalAngle(const Float32 value, const unsigned long pos)
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonBeamSequence::Item::setModulatedScanModeType(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ModulatedScanModeType.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonBeamSequence::Item::setNumberOfBlocks(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonControlPointDeliverySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
BeamLimitingDeviceAngle(DCM_BeamLimitingDeviceAngle),
BeamLimitingDevicePositionSequence(emptyDefaultItem /*emptyDefaultSequence*/),
BeamLimitingDeviceRotationDirection(DCM_BeamLimitingDeviceRotationDirection),
+ ChairHeadFramePosition(DCM_ChairHeadFramePosition),
CorrectedParameterSequence(emptyDefaultItem /*emptyDefaultSequence*/),
DeliveredMeterset(DCM_DeliveredMeterset),
GantryAngle(DCM_GantryAngle),
ReferencedControlPointIndex(DCM_ReferencedControlPointIndex),
ScanSpotMetersetsDelivered(DCM_ScanSpotMetersetsDelivered),
ScanSpotPositionMap(DCM_ScanSpotPositionMap),
+ ScanSpotPrescribedIndices(DCM_ScanSpotPrescribedIndices),
+ ScanSpotReordered(DCM_ScanSpotReordered),
ScanSpotTuneID(DCM_ScanSpotTuneID),
ScanningSpotSize(DCM_ScanningSpotSize),
SnoutPosition(DCM_SnoutPosition),
BeamLimitingDeviceAngle(copy.BeamLimitingDeviceAngle),
BeamLimitingDevicePositionSequence(copy.BeamLimitingDevicePositionSequence),
BeamLimitingDeviceRotationDirection(copy.BeamLimitingDeviceRotationDirection),
+ ChairHeadFramePosition(copy.ChairHeadFramePosition),
CorrectedParameterSequence(copy.CorrectedParameterSequence),
DeliveredMeterset(copy.DeliveredMeterset),
GantryAngle(copy.GantryAngle),
ReferencedControlPointIndex(copy.ReferencedControlPointIndex),
ScanSpotMetersetsDelivered(copy.ScanSpotMetersetsDelivered),
ScanSpotPositionMap(copy.ScanSpotPositionMap),
+ ScanSpotPrescribedIndices(copy.ScanSpotPrescribedIndices),
+ ScanSpotReordered(copy.ScanSpotReordered),
ScanSpotTuneID(copy.ScanSpotTuneID),
ScanningSpotSize(copy.ScanningSpotSize),
SnoutPosition(copy.SnoutPosition),
BeamLimitingDeviceAngle = copy.BeamLimitingDeviceAngle;
BeamLimitingDevicePositionSequence = copy.BeamLimitingDevicePositionSequence;
BeamLimitingDeviceRotationDirection = copy.BeamLimitingDeviceRotationDirection;
+ ChairHeadFramePosition = copy.ChairHeadFramePosition;
CorrectedParameterSequence = copy.CorrectedParameterSequence;
DeliveredMeterset = copy.DeliveredMeterset;
GantryAngle = copy.GantryAngle;
ReferencedControlPointIndex = copy.ReferencedControlPointIndex;
ScanSpotMetersetsDelivered = copy.ScanSpotMetersetsDelivered;
ScanSpotPositionMap = copy.ScanSpotPositionMap;
+ ScanSpotPrescribedIndices = copy.ScanSpotPrescribedIndices;
+ ScanSpotReordered = copy.ScanSpotReordered;
ScanSpotTuneID = copy.ScanSpotTuneID;
ScanningSpotSize = copy.ScanningSpotSize;
SnoutPosition = copy.SnoutPosition;
ScanSpotMetersetsDelivered.clear();
ScanningSpotSize.clear();
NumberOfPaintings.clear();
+ ScanSpotReordered.clear();
+ ScanSpotPrescribedIndices.clear();
PatientSupportAngle.clear();
PatientSupportRotationDirection.clear();
TableTopPitchAngle.clear();
TableTopRollAngle.clear();
TableTopRollRotationDirection.clear();
HeadFixationAngle.clear();
+ ChairHeadFramePosition.clear();
TableTopVerticalPosition.clear();
TableTopLongitudinalPosition.clear();
TableTopLateralPosition.clear();
ScanSpotMetersetsDelivered.isEmpty() &&
ScanningSpotSize.isEmpty() &&
NumberOfPaintings.isEmpty() &&
+ ScanSpotReordered.isEmpty() &&
+ ScanSpotPrescribedIndices.isEmpty() &&
PatientSupportAngle.isEmpty() &&
PatientSupportRotationDirection.isEmpty() &&
TableTopPitchAngle.isEmpty() &&
TableTopRollAngle.isEmpty() &&
TableTopRollRotationDirection.isEmpty() &&
HeadFixationAngle.isEmpty() &&
+ ChairHeadFramePosition.isEmpty() &&
TableTopVerticalPosition.isEmpty() &&
TableTopLongitudinalPosition.isEmpty() &&
TableTopLateralPosition.isEmpty() &&
getAndCheckElementFromDataset(item, ScanSpotMetersetsDelivered, "1-n", "1C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, ScanningSpotSize, "2", "3", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, NumberOfPaintings, "1", "1C", "IonControlPointDeliverySequence");
+ getAndCheckElementFromDataset(item, ScanSpotReordered, "1", "3", "IonControlPointDeliverySequence");
+ getAndCheckElementFromDataset(item, ScanSpotPrescribedIndices, "1-n", "1C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, PatientSupportAngle, "1", "1C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, PatientSupportRotationDirection, "1", "1C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, TableTopPitchAngle, "1", "2C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, TableTopRollAngle, "1", "2C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, TableTopRollRotationDirection, "1", "2C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, HeadFixationAngle, "1", "3", "IonControlPointDeliverySequence");
+ getAndCheckElementFromDataset(item, ChairHeadFramePosition, "1", "3", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, TableTopVerticalPosition, "1", "2C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, TableTopLongitudinalPosition, "1", "2C", "IonControlPointDeliverySequence");
getAndCheckElementFromDataset(item, TableTopLateralPosition, "1", "2C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(ScanSpotMetersetsDelivered), "1-n", "1C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(ScanningSpotSize), "2", "3", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmIntegerString(NumberOfPaintings), "1", "1C", "IonControlPointDeliverySequence");
+ addElementToDataset(result, item, new DcmCodeString(ScanSpotReordered), "1", "3", "IonControlPointDeliverySequence");
+ addElementToDataset(result, item, new DcmIntegerString(ScanSpotPrescribedIndices), "1-n", "1C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmDecimalString(PatientSupportAngle), "1", "1C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmCodeString(PatientSupportRotationDirection), "1", "1C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(TableTopPitchAngle), "1", "2C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(TableTopRollAngle), "1", "2C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmCodeString(TableTopRollRotationDirection), "1", "2C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(HeadFixationAngle), "1", "3", "IonControlPointDeliverySequence");
+ addElementToDataset(result, item, new DcmDecimalString(ChairHeadFramePosition), "1", "3", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmDecimalString(TableTopVerticalPosition), "1", "2C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmDecimalString(TableTopLongitudinalPosition), "1", "2C", "IonControlPointDeliverySequence");
addElementToDataset(result, item, new DcmDecimalString(TableTopLateralPosition), "1", "2C", "IonControlPointDeliverySequence");
}
+OFCondition DRTIonControlPointDeliverySequence::Item::getChairHeadFramePosition(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ChairHeadFramePosition, value, pos);
+}
+
+
+OFCondition DRTIonControlPointDeliverySequence::Item::getChairHeadFramePosition(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, ChairHeadFramePosition).getFloat64(value, pos);
+}
+
+
OFCondition DRTIonControlPointDeliverySequence::Item::getDeliveredMeterset(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonControlPointDeliverySequence::Item::getScanSpotPrescribedIndices(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ScanSpotPrescribedIndices, value, pos);
+}
+
+
+OFCondition DRTIonControlPointDeliverySequence::Item::getScanSpotPrescribedIndices(Sint32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmIntegerString &, ScanSpotPrescribedIndices).getSint32(value, pos);
+}
+
+
+OFCondition DRTIonControlPointDeliverySequence::Item::getScanSpotReordered(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ScanSpotReordered, value, pos);
+}
+
+
OFCondition DRTIonControlPointDeliverySequence::Item::getScanSpotTuneID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonControlPointDeliverySequence::Item::setChairHeadFramePosition(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ChairHeadFramePosition.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonControlPointDeliverySequence::Item::setDeliveredMeterset(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
}
+OFCondition DRTIonControlPointDeliverySequence::Item::setScanSpotPrescribedIndices(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmIntegerString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = ScanSpotPrescribedIndices.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTIonControlPointDeliverySequence::Item::setScanSpotReordered(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ScanSpotReordered.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonControlPointDeliverySequence::Item::setScanSpotTuneID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
BeamLimitingDeviceAngle(DCM_BeamLimitingDeviceAngle),
BeamLimitingDevicePositionSequence(emptyDefaultItem /*emptyDefaultSequence*/),
BeamLimitingDeviceRotationDirection(DCM_BeamLimitingDeviceRotationDirection),
+ ChairHeadFramePosition(DCM_ChairHeadFramePosition),
ControlPointIndex(DCM_ControlPointIndex),
CumulativeMetersetWeight(DCM_CumulativeMetersetWeight),
ExternalContourEntryPoint(DCM_ExternalContourEntryPoint),
ReferencedDoseReferenceSequence(emptyDefaultItem /*emptyDefaultSequence*/),
ScanSpotMetersetWeights(DCM_ScanSpotMetersetWeights),
ScanSpotPositionMap(DCM_ScanSpotPositionMap),
+ ScanSpotReorderingAllowed(DCM_ScanSpotReorderingAllowed),
ScanSpotTuneID(DCM_ScanSpotTuneID),
ScanningSpotSize(DCM_ScanningSpotSize),
SnoutPosition(DCM_SnoutPosition),
BeamLimitingDeviceAngle(copy.BeamLimitingDeviceAngle),
BeamLimitingDevicePositionSequence(copy.BeamLimitingDevicePositionSequence),
BeamLimitingDeviceRotationDirection(copy.BeamLimitingDeviceRotationDirection),
+ ChairHeadFramePosition(copy.ChairHeadFramePosition),
ControlPointIndex(copy.ControlPointIndex),
CumulativeMetersetWeight(copy.CumulativeMetersetWeight),
ExternalContourEntryPoint(copy.ExternalContourEntryPoint),
ReferencedDoseReferenceSequence(copy.ReferencedDoseReferenceSequence),
ScanSpotMetersetWeights(copy.ScanSpotMetersetWeights),
ScanSpotPositionMap(copy.ScanSpotPositionMap),
+ ScanSpotReorderingAllowed(copy.ScanSpotReorderingAllowed),
ScanSpotTuneID(copy.ScanSpotTuneID),
ScanningSpotSize(copy.ScanningSpotSize),
SnoutPosition(copy.SnoutPosition),
BeamLimitingDeviceAngle = copy.BeamLimitingDeviceAngle;
BeamLimitingDevicePositionSequence = copy.BeamLimitingDevicePositionSequence;
BeamLimitingDeviceRotationDirection = copy.BeamLimitingDeviceRotationDirection;
+ ChairHeadFramePosition = copy.ChairHeadFramePosition;
ControlPointIndex = copy.ControlPointIndex;
CumulativeMetersetWeight = copy.CumulativeMetersetWeight;
ExternalContourEntryPoint = copy.ExternalContourEntryPoint;
ReferencedDoseReferenceSequence = copy.ReferencedDoseReferenceSequence;
ScanSpotMetersetWeights = copy.ScanSpotMetersetWeights;
ScanSpotPositionMap = copy.ScanSpotPositionMap;
+ ScanSpotReorderingAllowed = copy.ScanSpotReorderingAllowed;
ScanSpotTuneID = copy.ScanSpotTuneID;
ScanningSpotSize = copy.ScanningSpotSize;
SnoutPosition = copy.SnoutPosition;
BeamLimitingDeviceAngle.clear();
BeamLimitingDeviceRotationDirection.clear();
ScanSpotTuneID.clear();
+ ScanSpotReorderingAllowed.clear();
NumberOfScanSpotPositions.clear();
ScanSpotPositionMap.clear();
ScanSpotMetersetWeights.clear();
TableTopRollAngle.clear();
TableTopRollRotationDirection.clear();
HeadFixationAngle.clear();
+ ChairHeadFramePosition.clear();
TableTopVerticalPosition.clear();
TableTopLongitudinalPosition.clear();
TableTopLateralPosition.clear();
BeamLimitingDeviceAngle.isEmpty() &&
BeamLimitingDeviceRotationDirection.isEmpty() &&
ScanSpotTuneID.isEmpty() &&
+ ScanSpotReorderingAllowed.isEmpty() &&
NumberOfScanSpotPositions.isEmpty() &&
ScanSpotPositionMap.isEmpty() &&
ScanSpotMetersetWeights.isEmpty() &&
TableTopRollAngle.isEmpty() &&
TableTopRollRotationDirection.isEmpty() &&
HeadFixationAngle.isEmpty() &&
+ ChairHeadFramePosition.isEmpty() &&
TableTopVerticalPosition.isEmpty() &&
TableTopLongitudinalPosition.isEmpty() &&
TableTopLateralPosition.isEmpty() &&
getAndCheckElementFromDataset(item, BeamLimitingDeviceAngle, "1", "1C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, BeamLimitingDeviceRotationDirection, "1", "1C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, ScanSpotTuneID, "1", "1C", "IonControlPointSequence");
+ getAndCheckElementFromDataset(item, ScanSpotReorderingAllowed, "1", "3", "IonControlPointSequence");
getAndCheckElementFromDataset(item, NumberOfScanSpotPositions, "1", "1C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, ScanSpotPositionMap, "1-n", "1C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, ScanSpotMetersetWeights, "1-n", "1C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, TableTopRollAngle, "1", "2C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, TableTopRollRotationDirection, "1", "2C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, HeadFixationAngle, "1", "3", "IonControlPointSequence");
+ getAndCheckElementFromDataset(item, ChairHeadFramePosition, "1", "3", "IonControlPointSequence");
getAndCheckElementFromDataset(item, TableTopVerticalPosition, "1", "2C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, TableTopLongitudinalPosition, "1", "2C", "IonControlPointSequence");
getAndCheckElementFromDataset(item, TableTopLateralPosition, "1", "2C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmDecimalString(BeamLimitingDeviceAngle), "1", "1C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmCodeString(BeamLimitingDeviceRotationDirection), "1", "1C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmShortString(ScanSpotTuneID), "1", "1C", "IonControlPointSequence");
+ addElementToDataset(result, item, new DcmCodeString(ScanSpotReorderingAllowed), "1", "3", "IonControlPointSequence");
addElementToDataset(result, item, new DcmIntegerString(NumberOfScanSpotPositions), "1", "1C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(ScanSpotPositionMap), "1-n", "1C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(ScanSpotMetersetWeights), "1-n", "1C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(TableTopRollAngle), "1", "2C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmCodeString(TableTopRollRotationDirection), "1", "2C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(HeadFixationAngle), "1", "3", "IonControlPointSequence");
+ addElementToDataset(result, item, new DcmDecimalString(ChairHeadFramePosition), "1", "3", "IonControlPointSequence");
addElementToDataset(result, item, new DcmDecimalString(TableTopVerticalPosition), "1", "2C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmDecimalString(TableTopLongitudinalPosition), "1", "2C", "IonControlPointSequence");
addElementToDataset(result, item, new DcmDecimalString(TableTopLateralPosition), "1", "2C", "IonControlPointSequence");
}
+OFCondition DRTIonControlPointSequence::Item::getChairHeadFramePosition(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ChairHeadFramePosition, value, pos);
+}
+
+
+OFCondition DRTIonControlPointSequence::Item::getChairHeadFramePosition(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, ChairHeadFramePosition).getFloat64(value, pos);
+}
+
+
OFCondition DRTIonControlPointSequence::Item::getControlPointIndex(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonControlPointSequence::Item::getScanSpotReorderingAllowed(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ScanSpotReorderingAllowed, value, pos);
+}
+
+
OFCondition DRTIonControlPointSequence::Item::getScanSpotTuneID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonControlPointSequence::Item::setChairHeadFramePosition(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ChairHeadFramePosition.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonControlPointSequence::Item::setControlPointIndex(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
}
+OFCondition DRTIonControlPointSequence::Item::setScanSpotReorderingAllowed(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ScanSpotReorderingAllowed.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonControlPointSequence::Item::setScanSpotTuneID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTInstitutionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "InstitutionCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "InstitutionCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "InstitutionCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "InstitutionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "InstitutionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "InstitutionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "InstitutionCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "InstitutionCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "InstitutionCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "InstitutionCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "InstitutionCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "InstitutionCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "InstitutionCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "InstitutionCodeSequence");
}
+OFCondition DRTInstitutionCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTInstitutionCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTInstitutionCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTInstitutionCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIconImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
BitsStored(DCM_BitsStored),
BluePaletteColorLookupTableData(DCM_BluePaletteColorLookupTableData),
BluePaletteColorLookupTableDescriptor(DCM_BluePaletteColorLookupTableDescriptor),
+ ColorSpace(DCM_ColorSpace),
Columns(DCM_Columns),
GreenPaletteColorLookupTableData(DCM_GreenPaletteColorLookupTableData),
GreenPaletteColorLookupTableDescriptor(DCM_GreenPaletteColorLookupTableDescriptor),
BitsStored(copy.BitsStored),
BluePaletteColorLookupTableData(copy.BluePaletteColorLookupTableData),
BluePaletteColorLookupTableDescriptor(copy.BluePaletteColorLookupTableDescriptor),
+ ColorSpace(copy.ColorSpace),
Columns(copy.Columns),
GreenPaletteColorLookupTableData(copy.GreenPaletteColorLookupTableData),
GreenPaletteColorLookupTableDescriptor(copy.GreenPaletteColorLookupTableDescriptor),
BitsStored = copy.BitsStored;
BluePaletteColorLookupTableData = copy.BluePaletteColorLookupTableData;
BluePaletteColorLookupTableDescriptor = copy.BluePaletteColorLookupTableDescriptor;
+ ColorSpace = copy.ColorSpace;
Columns = copy.Columns;
GreenPaletteColorLookupTableData = copy.GreenPaletteColorLookupTableData;
GreenPaletteColorLookupTableDescriptor = copy.GreenPaletteColorLookupTableDescriptor;
BitsStored.clear();
HighBit.clear();
PixelRepresentation.clear();
- PixelData.clear();
PlanarConfiguration.clear();
PixelAspectRatio.clear();
SmallestImagePixelValue.clear();
GreenPaletteColorLookupTableData.clear();
BluePaletteColorLookupTableData.clear();
ICCProfile.clear();
+ ColorSpace.clear();
+ PixelData.clear();
}
}
BitsStored.isEmpty() &&
HighBit.isEmpty() &&
PixelRepresentation.isEmpty() &&
- PixelData.isEmpty() &&
PlanarConfiguration.isEmpty() &&
PixelAspectRatio.isEmpty() &&
SmallestImagePixelValue.isEmpty() &&
RedPaletteColorLookupTableData.isEmpty() &&
GreenPaletteColorLookupTableData.isEmpty() &&
BluePaletteColorLookupTableData.isEmpty() &&
- ICCProfile.isEmpty();
+ ICCProfile.isEmpty() &&
+ ColorSpace.isEmpty() &&
+ PixelData.isEmpty();
}
getAndCheckElementFromDataset(item, BitsStored, "1", "1", "IconImageSequence");
getAndCheckElementFromDataset(item, HighBit, "1", "1", "IconImageSequence");
getAndCheckElementFromDataset(item, PixelRepresentation, "1", "1", "IconImageSequence");
- getAndCheckElementFromDataset(item, PixelData, "1", "1C", "IconImageSequence");
getAndCheckElementFromDataset(item, PlanarConfiguration, "1", "1C", "IconImageSequence");
getAndCheckElementFromDataset(item, PixelAspectRatio, "2", "1C", "IconImageSequence");
getAndCheckElementFromDataset(item, SmallestImagePixelValue, "1", "3", "IconImageSequence");
getAndCheckElementFromDataset(item, GreenPaletteColorLookupTableData, "1", "1C", "IconImageSequence");
getAndCheckElementFromDataset(item, BluePaletteColorLookupTableData, "1", "1C", "IconImageSequence");
getAndCheckElementFromDataset(item, ICCProfile, "1", "3", "IconImageSequence");
+ getAndCheckElementFromDataset(item, ColorSpace, "1", "3", "IconImageSequence");
+ getAndCheckElementFromDataset(item, PixelData, "1", "1", "IconImageSequence");
result = EC_Normal;
}
return result;
addElementToDataset(result, item, new DcmUnsignedShort(BitsStored), "1", "1", "IconImageSequence");
addElementToDataset(result, item, new DcmUnsignedShort(HighBit), "1", "1", "IconImageSequence");
addElementToDataset(result, item, new DcmUnsignedShort(PixelRepresentation), "1", "1", "IconImageSequence");
- addElementToDataset(result, item, new DcmPixelData(PixelData), "1", "1C", "IconImageSequence");
addElementToDataset(result, item, new DcmUnsignedShort(PlanarConfiguration), "1", "1C", "IconImageSequence");
addElementToDataset(result, item, new DcmIntegerString(PixelAspectRatio), "2", "1C", "IconImageSequence");
addElementToDataset(result, item, new DcmUnsignedShort(SmallestImagePixelValue), "1", "3", "IconImageSequence");
addElementToDataset(result, item, new DcmOtherByteOtherWord(GreenPaletteColorLookupTableData), "1", "1C", "IconImageSequence");
addElementToDataset(result, item, new DcmOtherByteOtherWord(BluePaletteColorLookupTableData), "1", "1C", "IconImageSequence");
addElementToDataset(result, item, new DcmOtherByteOtherWord(ICCProfile), "1", "3", "IconImageSequence");
+ addElementToDataset(result, item, new DcmCodeString(ColorSpace), "1", "3", "IconImageSequence");
+ addElementToDataset(result, item, new DcmPixelData(PixelData), "1", "1", "IconImageSequence");
}
return result;
}
}
+OFCondition DRTIconImageSequence::Item::getColorSpace(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ColorSpace, value, pos);
+}
+
+
OFCondition DRTIconImageSequence::Item::getColumns(Uint16 &value, const unsigned long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIconImageSequence::Item::setColorSpace(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ColorSpace.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIconImageSequence::Item::setColumns(const Uint16 value, const unsigned long pos)
{
if (EmptyDefaultItem)
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTImageIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
IssuerOfPatientID(DCM_IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(),
PatientBirthDate(DCM_PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(DCM_PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(DCM_PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(DCM_PatientAlternativeCalendar),
PatientSex(DCM_PatientSex),
ReferencedPatientPhotoSequence(),
QualityControlSubject(DCM_QualityControlSubject),
PatientBreedDescription(DCM_PatientBreedDescription),
PatientBreedCodeSequence(),
BreedRegistrationSequence(),
+ StrainDescription(DCM_StrainDescription),
+ StrainNomenclature(DCM_StrainNomenclature),
+ StrainCodeSequence(),
+ StrainAdditionalInformation(DCM_StrainAdditionalInformation),
+ StrainStockSequence(),
ResponsiblePerson(DCM_ResponsiblePerson),
ResponsiblePersonRole(DCM_ResponsiblePersonRole),
ResponsibleOrganization(DCM_ResponsibleOrganization),
PatientIdentityRemoved(DCM_PatientIdentityRemoved),
DeidentificationMethod(DCM_DeidentificationMethod),
DeidentificationMethodCodeSequence(),
+ SourcePatientGroupIdentificationSequence(),
+ GroupOfPatientsIdentificationSequence(),
ClinicalTrialSponsorName(DCM_ClinicalTrialSponsorName),
ClinicalTrialProtocolID(DCM_ClinicalTrialProtocolID),
ClinicalTrialProtocolName(DCM_ClinicalTrialProtocolName),
PatientAge(DCM_PatientAge),
PatientSize(DCM_PatientSize),
PatientWeight(DCM_PatientWeight),
+ PatientBodyMassIndex(DCM_PatientBodyMassIndex),
+ MeasuredAPDimension(DCM_MeasuredAPDimension),
+ MeasuredLateralDimension(DCM_MeasuredLateralDimension),
PatientSizeCodeSequence(),
+ MedicalAlerts(DCM_MedicalAlerts),
+ Allergies(DCM_Allergies),
+ SmokingStatus(DCM_SmokingStatus),
+ PregnancyStatus(DCM_PregnancyStatus),
+ LastMenstrualDate(DCM_LastMenstrualDate),
+ PatientState(DCM_PatientState),
Occupation(DCM_Occupation),
AdditionalPatientHistory(DCM_AdditionalPatientHistory),
AdmissionID(DCM_AdmissionID),
SeriesDescription(DCM_SeriesDescription),
SeriesDescriptionCodeSequence(),
OperatorsName(DCM_OperatorsName),
+ OperatorIdentificationSequence(),
ReferencedPerformedProcedureStepSequence(),
RequestAttributesSequence(),
PerformedProcedureStepID(DCM_PerformedProcedureStepID),
DeviceSerialNumber(DCM_DeviceSerialNumber),
SoftwareVersions(DCM_SoftwareVersions),
GantryID(DCM_GantryID),
+ UDISequence(),
SpatialResolution(DCM_SpatialResolution),
DateOfLastCalibration(DCM_DateOfLastCalibration),
TimeOfLastCalibration(DCM_TimeOfLastCalibration),
AcquisitionDate(DCM_AcquisitionDate),
AcquisitionTime(DCM_AcquisitionTime),
AcquisitionDateTime(DCM_AcquisitionDateTime),
- ReferencedImageSequence(),
- DerivationDescription(DCM_DerivationDescription),
- DerivationCodeSequence(),
- SourceImageSequence(),
- ReferencedInstanceSequence(),
ImagesInAcquisition(DCM_ImagesInAcquisition),
ImageComments(DCM_ImageComments),
QualityControlImage(DCM_QualityControlImage),
PresentationLUTShape(DCM_PresentationLUTShape),
IrradiationEventUID(DCM_IrradiationEventUID),
RealWorldValueMappingSequence(),
+ ReferencedImageSequence(),
+ ReferencedInstanceSequence(),
+ DerivationDescription(DCM_DerivationDescription),
+ DerivationCodeSequence(),
+ SourceImageSequence(),
+ SourceInstanceSequence(),
Rows(DCM_Rows),
Columns(DCM_Columns),
- PixelData(DCM_PixelData),
PlanarConfiguration(DCM_PlanarConfiguration),
PixelAspectRatio(DCM_PixelAspectRatio),
SmallestImagePixelValue(DCM_SmallestImagePixelValue),
GreenPaletteColorLookupTableData(DCM_GreenPaletteColorLookupTableData),
BluePaletteColorLookupTableData(DCM_BluePaletteColorLookupTableData),
ICCProfile(DCM_ICCProfile),
+ ColorSpace(DCM_ColorSpace),
+ PixelData(DCM_PixelData),
PixelDataProviderURL(DCM_PixelDataProviderURL),
PixelPaddingRangeLimit(DCM_PixelPaddingRangeLimit),
ContrastBolusAgent(DCM_ContrastBolusAgent),
TableTopLateralPosition(DCM_TableTopLateralPosition),
IsocenterPosition(DCM_IsocenterPosition),
PatientPosition(DCM_PatientPosition),
+ ExposureTime(DCM_ExposureTime),
+ ExposureTimeInms(DCM_ExposureTimeInms),
+ MetersetExposure(DCM_MetersetExposure),
ModalityLUTSequence(),
RescaleIntercept(DCM_RescaleIntercept),
RescaleSlope(DCM_RescaleSlope),
RelatedGeneralSOPClassUID(DCM_RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(DCM_OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(),
+ ContextGroupIdentificationSequence(),
+ MappingResourceIdentificationSequence(),
TimezoneOffsetFromUTC(DCM_TimezoneOffsetFromUTC),
ContributingEquipmentSequence(),
SOPInstanceStatus(DCM_SOPInstanceStatus),
IssuerOfPatientID(copy.IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
PatientBirthDate(copy.PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(copy.PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(copy.PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(copy.PatientAlternativeCalendar),
PatientSex(copy.PatientSex),
ReferencedPatientPhotoSequence(copy.ReferencedPatientPhotoSequence),
QualityControlSubject(copy.QualityControlSubject),
PatientBreedDescription(copy.PatientBreedDescription),
PatientBreedCodeSequence(copy.PatientBreedCodeSequence),
BreedRegistrationSequence(copy.BreedRegistrationSequence),
+ StrainDescription(copy.StrainDescription),
+ StrainNomenclature(copy.StrainNomenclature),
+ StrainCodeSequence(copy.StrainCodeSequence),
+ StrainAdditionalInformation(copy.StrainAdditionalInformation),
+ StrainStockSequence(copy.StrainStockSequence),
ResponsiblePerson(copy.ResponsiblePerson),
ResponsiblePersonRole(copy.ResponsiblePersonRole),
ResponsibleOrganization(copy.ResponsibleOrganization),
PatientIdentityRemoved(copy.PatientIdentityRemoved),
DeidentificationMethod(copy.DeidentificationMethod),
DeidentificationMethodCodeSequence(copy.DeidentificationMethodCodeSequence),
+ SourcePatientGroupIdentificationSequence(copy.SourcePatientGroupIdentificationSequence),
+ GroupOfPatientsIdentificationSequence(copy.GroupOfPatientsIdentificationSequence),
ClinicalTrialSponsorName(copy.ClinicalTrialSponsorName),
ClinicalTrialProtocolID(copy.ClinicalTrialProtocolID),
ClinicalTrialProtocolName(copy.ClinicalTrialProtocolName),
PatientAge(copy.PatientAge),
PatientSize(copy.PatientSize),
PatientWeight(copy.PatientWeight),
+ PatientBodyMassIndex(copy.PatientBodyMassIndex),
+ MeasuredAPDimension(copy.MeasuredAPDimension),
+ MeasuredLateralDimension(copy.MeasuredLateralDimension),
PatientSizeCodeSequence(copy.PatientSizeCodeSequence),
+ MedicalAlerts(copy.MedicalAlerts),
+ Allergies(copy.Allergies),
+ SmokingStatus(copy.SmokingStatus),
+ PregnancyStatus(copy.PregnancyStatus),
+ LastMenstrualDate(copy.LastMenstrualDate),
+ PatientState(copy.PatientState),
Occupation(copy.Occupation),
AdditionalPatientHistory(copy.AdditionalPatientHistory),
AdmissionID(copy.AdmissionID),
SeriesDescription(copy.SeriesDescription),
SeriesDescriptionCodeSequence(copy.SeriesDescriptionCodeSequence),
OperatorsName(copy.OperatorsName),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
ReferencedPerformedProcedureStepSequence(copy.ReferencedPerformedProcedureStepSequence),
RequestAttributesSequence(copy.RequestAttributesSequence),
PerformedProcedureStepID(copy.PerformedProcedureStepID),
DeviceSerialNumber(copy.DeviceSerialNumber),
SoftwareVersions(copy.SoftwareVersions),
GantryID(copy.GantryID),
+ UDISequence(copy.UDISequence),
SpatialResolution(copy.SpatialResolution),
DateOfLastCalibration(copy.DateOfLastCalibration),
TimeOfLastCalibration(copy.TimeOfLastCalibration),
AcquisitionDate(copy.AcquisitionDate),
AcquisitionTime(copy.AcquisitionTime),
AcquisitionDateTime(copy.AcquisitionDateTime),
- ReferencedImageSequence(copy.ReferencedImageSequence),
- DerivationDescription(copy.DerivationDescription),
- DerivationCodeSequence(copy.DerivationCodeSequence),
- SourceImageSequence(copy.SourceImageSequence),
- ReferencedInstanceSequence(copy.ReferencedInstanceSequence),
ImagesInAcquisition(copy.ImagesInAcquisition),
ImageComments(copy.ImageComments),
QualityControlImage(copy.QualityControlImage),
PresentationLUTShape(copy.PresentationLUTShape),
IrradiationEventUID(copy.IrradiationEventUID),
RealWorldValueMappingSequence(copy.RealWorldValueMappingSequence),
+ ReferencedImageSequence(copy.ReferencedImageSequence),
+ ReferencedInstanceSequence(copy.ReferencedInstanceSequence),
+ DerivationDescription(copy.DerivationDescription),
+ DerivationCodeSequence(copy.DerivationCodeSequence),
+ SourceImageSequence(copy.SourceImageSequence),
+ SourceInstanceSequence(copy.SourceInstanceSequence),
Rows(copy.Rows),
Columns(copy.Columns),
- PixelData(copy.PixelData),
PlanarConfiguration(copy.PlanarConfiguration),
PixelAspectRatio(copy.PixelAspectRatio),
SmallestImagePixelValue(copy.SmallestImagePixelValue),
GreenPaletteColorLookupTableData(copy.GreenPaletteColorLookupTableData),
BluePaletteColorLookupTableData(copy.BluePaletteColorLookupTableData),
ICCProfile(copy.ICCProfile),
+ ColorSpace(copy.ColorSpace),
+ PixelData(copy.PixelData),
PixelDataProviderURL(copy.PixelDataProviderURL),
PixelPaddingRangeLimit(copy.PixelPaddingRangeLimit),
ContrastBolusAgent(copy.ContrastBolusAgent),
TableTopLateralPosition(copy.TableTopLateralPosition),
IsocenterPosition(copy.IsocenterPosition),
PatientPosition(copy.PatientPosition),
+ ExposureTime(copy.ExposureTime),
+ ExposureTimeInms(copy.ExposureTimeInms),
+ MetersetExposure(copy.MetersetExposure),
ModalityLUTSequence(copy.ModalityLUTSequence),
RescaleIntercept(copy.RescaleIntercept),
RescaleSlope(copy.RescaleSlope),
RelatedGeneralSOPClassUID(copy.RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(copy.OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(copy.CodingSchemeIdentificationSequence),
+ ContextGroupIdentificationSequence(copy.ContextGroupIdentificationSequence),
+ MappingResourceIdentificationSequence(copy.MappingResourceIdentificationSequence),
TimezoneOffsetFromUTC(copy.TimezoneOffsetFromUTC),
ContributingEquipmentSequence(copy.ContributingEquipmentSequence),
SOPInstanceStatus(copy.SOPInstanceStatus),
IssuerOfPatientID = copy.IssuerOfPatientID;
IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
PatientBirthDate = copy.PatientBirthDate;
+ PatientBirthDateInAlternativeCalendar = copy.PatientBirthDateInAlternativeCalendar;
+ PatientDeathDateInAlternativeCalendar = copy.PatientDeathDateInAlternativeCalendar;
+ PatientAlternativeCalendar = copy.PatientAlternativeCalendar;
PatientSex = copy.PatientSex;
ReferencedPatientPhotoSequence = copy.ReferencedPatientPhotoSequence;
QualityControlSubject = copy.QualityControlSubject;
PatientBreedDescription = copy.PatientBreedDescription;
PatientBreedCodeSequence = copy.PatientBreedCodeSequence;
BreedRegistrationSequence = copy.BreedRegistrationSequence;
+ StrainDescription = copy.StrainDescription;
+ StrainNomenclature = copy.StrainNomenclature;
+ StrainCodeSequence = copy.StrainCodeSequence;
+ StrainAdditionalInformation = copy.StrainAdditionalInformation;
+ StrainStockSequence = copy.StrainStockSequence;
ResponsiblePerson = copy.ResponsiblePerson;
ResponsiblePersonRole = copy.ResponsiblePersonRole;
ResponsibleOrganization = copy.ResponsibleOrganization;
PatientIdentityRemoved = copy.PatientIdentityRemoved;
DeidentificationMethod = copy.DeidentificationMethod;
DeidentificationMethodCodeSequence = copy.DeidentificationMethodCodeSequence;
+ SourcePatientGroupIdentificationSequence = copy.SourcePatientGroupIdentificationSequence;
+ GroupOfPatientsIdentificationSequence = copy.GroupOfPatientsIdentificationSequence;
ClinicalTrialSponsorName = copy.ClinicalTrialSponsorName;
ClinicalTrialProtocolID = copy.ClinicalTrialProtocolID;
ClinicalTrialProtocolName = copy.ClinicalTrialProtocolName;
PatientAge = copy.PatientAge;
PatientSize = copy.PatientSize;
PatientWeight = copy.PatientWeight;
+ PatientBodyMassIndex = copy.PatientBodyMassIndex;
+ MeasuredAPDimension = copy.MeasuredAPDimension;
+ MeasuredLateralDimension = copy.MeasuredLateralDimension;
PatientSizeCodeSequence = copy.PatientSizeCodeSequence;
+ MedicalAlerts = copy.MedicalAlerts;
+ Allergies = copy.Allergies;
+ SmokingStatus = copy.SmokingStatus;
+ PregnancyStatus = copy.PregnancyStatus;
+ LastMenstrualDate = copy.LastMenstrualDate;
+ PatientState = copy.PatientState;
Occupation = copy.Occupation;
AdditionalPatientHistory = copy.AdditionalPatientHistory;
AdmissionID = copy.AdmissionID;
SeriesDescription = copy.SeriesDescription;
SeriesDescriptionCodeSequence = copy.SeriesDescriptionCodeSequence;
OperatorsName = copy.OperatorsName;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
ReferencedPerformedProcedureStepSequence = copy.ReferencedPerformedProcedureStepSequence;
RequestAttributesSequence = copy.RequestAttributesSequence;
PerformedProcedureStepID = copy.PerformedProcedureStepID;
DeviceSerialNumber = copy.DeviceSerialNumber;
SoftwareVersions = copy.SoftwareVersions;
GantryID = copy.GantryID;
+ UDISequence = copy.UDISequence;
SpatialResolution = copy.SpatialResolution;
DateOfLastCalibration = copy.DateOfLastCalibration;
TimeOfLastCalibration = copy.TimeOfLastCalibration;
AcquisitionDate = copy.AcquisitionDate;
AcquisitionTime = copy.AcquisitionTime;
AcquisitionDateTime = copy.AcquisitionDateTime;
- ReferencedImageSequence = copy.ReferencedImageSequence;
- DerivationDescription = copy.DerivationDescription;
- DerivationCodeSequence = copy.DerivationCodeSequence;
- SourceImageSequence = copy.SourceImageSequence;
- ReferencedInstanceSequence = copy.ReferencedInstanceSequence;
ImagesInAcquisition = copy.ImagesInAcquisition;
ImageComments = copy.ImageComments;
QualityControlImage = copy.QualityControlImage;
PresentationLUTShape = copy.PresentationLUTShape;
IrradiationEventUID = copy.IrradiationEventUID;
RealWorldValueMappingSequence = copy.RealWorldValueMappingSequence;
+ ReferencedImageSequence = copy.ReferencedImageSequence;
+ ReferencedInstanceSequence = copy.ReferencedInstanceSequence;
+ DerivationDescription = copy.DerivationDescription;
+ DerivationCodeSequence = copy.DerivationCodeSequence;
+ SourceImageSequence = copy.SourceImageSequence;
+ SourceInstanceSequence = copy.SourceInstanceSequence;
Rows = copy.Rows;
Columns = copy.Columns;
- PixelData = copy.PixelData;
PlanarConfiguration = copy.PlanarConfiguration;
PixelAspectRatio = copy.PixelAspectRatio;
SmallestImagePixelValue = copy.SmallestImagePixelValue;
GreenPaletteColorLookupTableData = copy.GreenPaletteColorLookupTableData;
BluePaletteColorLookupTableData = copy.BluePaletteColorLookupTableData;
ICCProfile = copy.ICCProfile;
+ ColorSpace = copy.ColorSpace;
+ PixelData = copy.PixelData;
PixelDataProviderURL = copy.PixelDataProviderURL;
PixelPaddingRangeLimit = copy.PixelPaddingRangeLimit;
ContrastBolusAgent = copy.ContrastBolusAgent;
TableTopLateralPosition = copy.TableTopLateralPosition;
IsocenterPosition = copy.IsocenterPosition;
PatientPosition = copy.PatientPosition;
+ ExposureTime = copy.ExposureTime;
+ ExposureTimeInms = copy.ExposureTimeInms;
+ MetersetExposure = copy.MetersetExposure;
ModalityLUTSequence = copy.ModalityLUTSequence;
RescaleIntercept = copy.RescaleIntercept;
RescaleSlope = copy.RescaleSlope;
RelatedGeneralSOPClassUID = copy.RelatedGeneralSOPClassUID;
OriginalSpecializedSOPClassUID = copy.OriginalSpecializedSOPClassUID;
CodingSchemeIdentificationSequence = copy.CodingSchemeIdentificationSequence;
+ ContextGroupIdentificationSequence = copy.ContextGroupIdentificationSequence;
+ MappingResourceIdentificationSequence = copy.MappingResourceIdentificationSequence;
TimezoneOffsetFromUTC = copy.TimezoneOffsetFromUTC;
ContributingEquipmentSequence = copy.ContributingEquipmentSequence;
SOPInstanceStatus = copy.SOPInstanceStatus;
IssuerOfPatientID.clear();
IssuerOfPatientIDQualifiersSequence.clear();
PatientBirthDate.clear();
+ PatientBirthDateInAlternativeCalendar.clear();
+ PatientDeathDateInAlternativeCalendar.clear();
+ PatientAlternativeCalendar.clear();
PatientSex.clear();
ReferencedPatientPhotoSequence.clear();
QualityControlSubject.clear();
PatientBreedDescription.clear();
PatientBreedCodeSequence.clear();
BreedRegistrationSequence.clear();
+ StrainDescription.clear();
+ StrainNomenclature.clear();
+ StrainCodeSequence.clear();
+ StrainAdditionalInformation.clear();
+ StrainStockSequence.clear();
ResponsiblePerson.clear();
ResponsiblePersonRole.clear();
ResponsibleOrganization.clear();
PatientIdentityRemoved.clear();
DeidentificationMethod.clear();
DeidentificationMethodCodeSequence.clear();
+ SourcePatientGroupIdentificationSequence.clear();
+ GroupOfPatientsIdentificationSequence.clear();
ClinicalTrialSponsorName.clear();
ClinicalTrialProtocolID.clear();
ClinicalTrialProtocolName.clear();
PatientAge.clear();
PatientSize.clear();
PatientWeight.clear();
+ PatientBodyMassIndex.clear();
+ MeasuredAPDimension.clear();
+ MeasuredLateralDimension.clear();
PatientSizeCodeSequence.clear();
+ MedicalAlerts.clear();
+ Allergies.clear();
+ SmokingStatus.clear();
+ PregnancyStatus.clear();
+ LastMenstrualDate.clear();
+ PatientState.clear();
Occupation.clear();
AdditionalPatientHistory.clear();
AdmissionID.clear();
SeriesDescription.clear();
SeriesDescriptionCodeSequence.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
ReferencedPerformedProcedureStepSequence.clear();
RequestAttributesSequence.clear();
PerformedProcedureStepID.clear();
DeviceSerialNumber.clear();
SoftwareVersions.clear();
GantryID.clear();
+ UDISequence.clear();
SpatialResolution.clear();
DateOfLastCalibration.clear();
TimeOfLastCalibration.clear();
AcquisitionDate.clear();
AcquisitionTime.clear();
AcquisitionDateTime.clear();
- ReferencedImageSequence.clear();
- DerivationDescription.clear();
- DerivationCodeSequence.clear();
- SourceImageSequence.clear();
- ReferencedInstanceSequence.clear();
ImagesInAcquisition.clear();
ImageComments.clear();
QualityControlImage.clear();
PresentationLUTShape.clear();
IrradiationEventUID.clear();
RealWorldValueMappingSequence.clear();
+ ReferencedImageSequence.clear();
+ ReferencedInstanceSequence.clear();
+ DerivationDescription.clear();
+ DerivationCodeSequence.clear();
+ SourceImageSequence.clear();
+ SourceInstanceSequence.clear();
SamplesPerPixel.clear();
PhotometricInterpretation.clear();
Rows.clear();
BitsStored.clear();
HighBit.clear();
PixelRepresentation.clear();
- PixelData.clear();
PlanarConfiguration.clear();
PixelAspectRatio.clear();
SmallestImagePixelValue.clear();
GreenPaletteColorLookupTableData.clear();
BluePaletteColorLookupTableData.clear();
ICCProfile.clear();
+ ColorSpace.clear();
+ PixelData.clear();
PixelDataProviderURL.clear();
PixelPaddingRangeLimit.clear();
ContrastBolusAgent.clear();
TableTopLateralPosition.clear();
IsocenterPosition.clear();
PatientPosition.clear();
+ ExposureTime.clear();
+ ExposureTimeInms.clear();
+ MetersetExposure.clear();
ModalityLUTSequence.clear();
RescaleIntercept.clear();
RescaleSlope.clear();
RelatedGeneralSOPClassUID.clear();
OriginalSpecializedSOPClassUID.clear();
CodingSchemeIdentificationSequence.clear();
+ ContextGroupIdentificationSequence.clear();
+ MappingResourceIdentificationSequence.clear();
TimezoneOffsetFromUTC.clear();
ContributingEquipmentSequence.clear();
SOPInstanceStatus.clear();
getAndCheckElementFromDataset(dataset, DeviceSerialNumber, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SoftwareVersions, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, GantryID, "1", "3", "GeneralEquipmentModule");
+ UDISequence.read(dataset, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SpatialResolution, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, DateOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, TimeOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, AcquisitionDate, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, AcquisitionTime, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, AcquisitionDateTime, "1", "3", "GeneralImageModule");
- ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralImageModule");
- getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralImageModule");
- DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralImageModule");
- SourceImageSequence.read(dataset, "1-n", "3", "GeneralImageModule");
- ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, ImagesInAcquisition, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, ImageComments, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, QualityControlImage, "1", "3", "GeneralImageModule");
getAndCheckElementFromDataset(dataset, IrradiationEventUID, "1-n", "3", "GeneralImageModule");
RealWorldValueMappingSequence.read(dataset, "1-n", "3", "GeneralImageModule");
+ // --- GeneralReferenceModule (U) ---
+ ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralReferenceModule");
+ DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+
// --- ImagePixelModule (M) ---
// getAndCheckElementFromDataset(dataset, SamplesPerPixel, "1", "1", "ImagePixelModule");
// getAndCheckElementFromDataset(dataset, PhotometricInterpretation, "1", "1", "ImagePixelModule");
// getAndCheckElementFromDataset(dataset, BitsStored, "1", "1", "ImagePixelModule");
// getAndCheckElementFromDataset(dataset, HighBit, "1", "1", "ImagePixelModule");
// getAndCheckElementFromDataset(dataset, PixelRepresentation, "1", "1", "ImagePixelModule");
- getAndCheckElementFromDataset(dataset, PixelData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PlanarConfiguration, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PixelAspectRatio, "2", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, SmallestImagePixelValue, "1", "3", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, GreenPaletteColorLookupTableData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, BluePaletteColorLookupTableData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, ICCProfile, "1", "3", "ImagePixelModule");
+ getAndCheckElementFromDataset(dataset, ColorSpace, "1", "3", "ImagePixelModule");
+ getAndCheckElementFromDataset(dataset, PixelData, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PixelDataProviderURL, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, PixelPaddingRangeLimit, "1", "1C", "ImagePixelModule");
getAndCheckElementFromDataset(dataset, TableTopLateralPosition, "1", "3", "RTImageModule");
getAndCheckElementFromDataset(dataset, IsocenterPosition, "3", "3", "RTImageModule");
getAndCheckElementFromDataset(dataset, PatientPosition, "1", "1C", "RTImageModule");
+ getAndCheckElementFromDataset(dataset, ExposureTime, "1", "3", "RTImageModule");
+ getAndCheckElementFromDataset(dataset, ExposureTimeInms, "1", "3", "RTImageModule");
+ getAndCheckElementFromDataset(dataset, MetersetExposure, "1", "3", "RTImageModule");
// --- ModalityLUTModule (U) ---
ModalityLUTSequence.read(dataset, "1-n", "1C", "ModalityLUTModule");
getAndCheckElementFromDataset(dataset, RelatedGeneralSOPClassUID, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, OriginalSpecializedSOPClassUID, "1", "3", "SOPCommonModule");
CodingSchemeIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ ContextGroupIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ MappingResourceIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, TimezoneOffsetFromUTC, "1", "3", "SOPCommonModule");
ContributingEquipmentSequence.read(dataset, "1-n", "3", "SOPCommonModule");
// getAndCheckElementFromDataset(dataset, InstanceNumber, "1", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, IssuerOfPatientID, "1", "3", "PatientModule");
IssuerOfPatientIDQualifiersSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBirthDate, "1", "2", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientBirthDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientDeathDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientAlternativeCalendar, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientSex, "1", "2", "PatientModule");
ReferencedPatientPhotoSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, QualityControlSubject, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBreedDescription, "1", "2C", "PatientModule");
PatientBreedCodeSequence.read(dataset, "1-n", "2C", "PatientModule");
BreedRegistrationSequence.read(dataset, "1-n", "2C", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainDescription, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainNomenclature, "1", "3", "PatientModule");
+ StrainCodeSequence.read(dataset, "1-n", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainAdditionalInformation, "1", "3", "PatientModule");
+ StrainStockSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePerson, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePersonRole, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsibleOrganization, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientIdentityRemoved, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, DeidentificationMethod, "1-n", "1C", "PatientModule");
DeidentificationMethodCodeSequence.read(dataset, "1-n", "1C", "PatientModule");
+ SourcePatientGroupIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
+ GroupOfPatientsIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (dataset.tagExists(DCM_ClinicalTrialSponsorName) ||
getAndCheckElementFromDataset(dataset, PatientAge, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientSize, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientWeight, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientBodyMassIndex, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredAPDimension, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredLateralDimension, "1", "3", "PatientStudyModule");
PatientSizeCodeSequence.read(dataset, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MedicalAlerts, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, Allergies, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, SmokingStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PregnancyStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, LastMenstrualDate, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientState, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, Occupation, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdditionalPatientHistory, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdmissionID, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, SeriesDescription, "1", "3", "RTSeriesModule");
SeriesDescriptionCodeSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, OperatorsName, "1-n", "2", "RTSeriesModule");
+ OperatorIdentificationSequence.read(dataset, "1-n", "3", "RTSeriesModule");
ReferencedPerformedProcedureStepSequence.read(dataset, "1-n", "3", "RTSeriesModule");
RequestAttributesSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, PerformedProcedureStepID, "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(IssuerOfPatientID), "1", "3", "PatientModule");
if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmDate(PatientBirthDate), "1", "2", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientBirthDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientDeathDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmCodeString(PatientAlternativeCalendar), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientSex), "1", "2", "PatientModule");
if (result.good()) result = ReferencedPatientPhotoSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlSubject), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(PatientBreedDescription), "1", "2C", "PatientModule");
if (result.good()) result = PatientBreedCodeSequence.write(dataset, "1-n" ,"2C", "PatientModule");
if (result.good()) result = BreedRegistrationSequence.write(dataset, "1-n" ,"2C", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedCharacters(StrainDescription), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(StrainNomenclature), "1", "3", "PatientModule");
+ if (result.good()) result = StrainCodeSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedText(StrainAdditionalInformation), "1", "3", "PatientModule");
+ if (result.good()) result = StrainStockSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmPersonName(ResponsiblePerson), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(ResponsiblePersonRole), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(ResponsibleOrganization), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientIdentityRemoved), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(DeidentificationMethod), "1-n", "1C", "PatientModule");
if (result.good()) result = DeidentificationMethodCodeSequence.write(dataset, "1-n" ,"1C", "PatientModule");
+ if (result.good()) result = SourcePatientGroupIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ if (result.good()) result = GroupOfPatientsIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (isClinicalTrialSubjectModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmAgeString(PatientAge), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientSize), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientWeight), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(PatientBodyMassIndex), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredAPDimension), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredLateralDimension), "1", "3", "PatientStudyModule");
if (result.good()) result = PatientSizeCodeSequence.write(dataset, "1-n" ,"3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(MedicalAlerts), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(Allergies), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmCodeString(SmokingStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmUnsignedShort(PregnancyStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDate(LastMenstrualDate), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientState), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmShortString(Occupation), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongText(AdditionalPatientHistory), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(AdmissionID), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(SeriesDescription), "1", "3", "RTSeriesModule");
if (result.good()) result = SeriesDescriptionCodeSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmPersonName(OperatorsName), "1-n", "2", "RTSeriesModule");
+ if (result.good()) result = OperatorIdentificationSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = ReferencedPerformedProcedureStepSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = RequestAttributesSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmShortString(PerformedProcedureStepID), "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(DeviceSerialNumber), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(SoftwareVersions), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(GantryID), "1", "3", "GeneralEquipmentModule");
+ if (result.good()) result = UDISequence.write(dataset, "1-n" ,"3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDecimalString(SpatialResolution), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(DateOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmTime(TimeOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(AcquisitionDate), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmTime(AcquisitionTime), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmDateTime(AcquisitionDateTime), "1", "3", "GeneralImageModule");
- if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
- addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralImageModule");
- if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
- if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
- if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmIntegerString(ImagesInAcquisition), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmLongText(ImageComments), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlImage), "1", "3", "GeneralImageModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(IrradiationEventUID), "1-n", "3", "GeneralImageModule");
if (result.good()) result = RealWorldValueMappingSequence.write(dataset, "1-n" ,"3", "GeneralImageModule");
+ // --- GeneralReferenceModule (U) ---
+ if (isGeneralReferenceModulePresent(OFFalse /*complete*/))
+ {
+ if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralReferenceModule");
+ if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ }
+
// --- ImagePixelModule (M) ---
// addElementToDataset(result, dataset, new DcmUnsignedShort(SamplesPerPixel), "1", "1", "ImagePixelModule");
// addElementToDataset(result, dataset, new DcmCodeString(PhotometricInterpretation), "1", "1", "ImagePixelModule");
// addElementToDataset(result, dataset, new DcmUnsignedShort(BitsStored), "1", "1", "ImagePixelModule");
// addElementToDataset(result, dataset, new DcmUnsignedShort(HighBit), "1", "1", "ImagePixelModule");
// addElementToDataset(result, dataset, new DcmUnsignedShort(PixelRepresentation), "1", "1", "ImagePixelModule");
- addElementToDataset(result, dataset, new DcmPixelData(PixelData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUnsignedShort(PlanarConfiguration), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmIntegerString(PixelAspectRatio), "2", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUnsignedShort(SmallestImagePixelValue), "1", "3", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmOtherByteOtherWord(GreenPaletteColorLookupTableData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmOtherByteOtherWord(BluePaletteColorLookupTableData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmOtherByteOtherWord(ICCProfile), "1", "3", "ImagePixelModule");
+ addElementToDataset(result, dataset, new DcmCodeString(ColorSpace), "1", "3", "ImagePixelModule");
+ addElementToDataset(result, dataset, new DcmPixelData(PixelData), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUniversalResourceIdentifierOrLocator(PixelDataProviderURL), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmUnsignedShort(PixelPaddingRangeLimit), "1", "1C", "ImagePixelModule");
addElementToDataset(result, dataset, new DcmDecimalString(TableTopLateralPosition), "1", "3", "RTImageModule");
addElementToDataset(result, dataset, new DcmDecimalString(IsocenterPosition), "3", "3", "RTImageModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientPosition), "1", "1C", "RTImageModule");
+ addElementToDataset(result, dataset, new DcmIntegerString(ExposureTime), "1", "3", "RTImageModule");
+ addElementToDataset(result, dataset, new DcmFloatingPointDouble(ExposureTimeInms), "1", "3", "RTImageModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MetersetExposure), "1", "3", "RTImageModule");
// --- ModalityLUTModule (U) ---
if (isModalityLUTModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmUniqueIdentifier(RelatedGeneralSOPClassUID), "1-n", "3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(OriginalSpecializedSOPClassUID), "1", "3", "SOPCommonModule");
if (result.good()) result = CodingSchemeIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = ContextGroupIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = MappingResourceIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmShortString(TimezoneOffsetFromUTC), "1", "3", "SOPCommonModule");
if (result.good()) result = ContributingEquipmentSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
// addElementToDataset(result, dataset, new DcmIntegerString(InstanceNumber), "1", "3", "SOPCommonModule");
!PatientAge.isEmpty() ||
!PatientSize.isEmpty() ||
!PatientWeight.isEmpty() ||
+ !PatientBodyMassIndex.isEmpty() ||
+ !MeasuredAPDimension.isEmpty() ||
+ !MeasuredLateralDimension.isEmpty() ||
!PatientSizeCodeSequence.isEmpty() ||
+ !MedicalAlerts.isEmpty() ||
+ !Allergies.isEmpty() ||
+ !SmokingStatus.isEmpty() ||
+ !PregnancyStatus.isEmpty() ||
+ !LastMenstrualDate.isEmpty() ||
+ !PatientState.isEmpty() ||
!Occupation.isEmpty() ||
!AdditionalPatientHistory.isEmpty() ||
!AdmissionID.isEmpty() ||
}
+OFBool DRTImageIOD::isGeneralReferenceModulePresent(const OFBool /*complete*/)
+{
+ /* check whether at least one attribute is present */
+ return !ReferencedImageSequence.isEmpty() ||
+ !ReferencedInstanceSequence.isEmpty() ||
+ !DerivationDescription.isEmpty() ||
+ !DerivationCodeSequence.isEmpty() ||
+ !SourceImageSequence.isEmpty() ||
+ !SourceInstanceSequence.isEmpty();
+}
+
+
OFBool DRTImageIOD::isContrastBolusModulePresent(const OFBool /*complete*/)
{
/* check whether at least one attribute is present */
}
+OFCondition DRTImageIOD::getAllergies(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(Allergies, value, pos);
+}
+
+
OFCondition DRTImageIOD::getApprovalStatus(OFString &value, const signed long pos) const
{
return getStringValueFromElement(ApprovalStatus, value, pos);
}
+OFCondition DRTImageIOD::getColorSpace(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(ColorSpace, value, pos);
+}
+
+
OFCondition DRTImageIOD::getColumns(Uint16 &value, const unsigned long pos) const
{
return OFconst_cast(DcmUnsignedShort &, Columns).getUint16(value, pos);
}
+OFCondition DRTImageIOD::getExposureTime(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(ExposureTime, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getExposureTime(Sint32 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmIntegerString &, ExposureTime).getSint32(value, pos);
+}
+
+
+OFCondition DRTImageIOD::getExposureTimeInms(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmFloatingPointDouble &, ExposureTimeInms).getFloat64(value, pos);
+}
+
+
OFCondition DRTImageIOD::getFractionNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(FractionNumber, value, pos);
}
+OFCondition DRTImageIOD::getLastMenstrualDate(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(LastMenstrualDate, value, pos);
+}
+
+
OFCondition DRTImageIOD::getLongitudinalTemporalInformationModified(OFString &value, const signed long pos) const
{
return getStringValueFromElement(LongitudinalTemporalInformationModified, value, pos);
}
+OFCondition DRTImageIOD::getMeasuredAPDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredAPDimension, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getMeasuredAPDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredAPDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTImageIOD::getMeasuredLateralDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredLateralDimension, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getMeasuredLateralDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredLateralDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTImageIOD::getMedicalAlerts(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MedicalAlerts, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getMetersetExposure(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MetersetExposure, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getMetersetExposure(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MetersetExposure).getFloat64(value, pos);
+}
+
+
OFCondition DRTImageIOD::getModality(OFString &value, const signed long pos) const
{
return getStringValueFromElement(Modality, value, pos);
}
+OFCondition DRTImageIOD::getPatientAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTImageIOD::getPatientBirthDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthDate, value, pos);
}
+OFCondition DRTImageIOD::getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBirthDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTImageIOD::getPatientBirthTime(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthTime, value, pos);
}
+OFCondition DRTImageIOD::getPatientBodyMassIndex(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBodyMassIndex, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getPatientBodyMassIndex(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, PatientBodyMassIndex).getFloat64(value, pos);
+}
+
+
OFCondition DRTImageIOD::getPatientBreedDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBreedDescription, value, pos);
}
+OFCondition DRTImageIOD::getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientDeathDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTImageIOD::getPatientID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientID, value, pos);
}
+OFCondition DRTImageIOD::getPatientState(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientState, value, pos);
+}
+
+
OFCondition DRTImageIOD::getPatientSupportAngle(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientSupportAngle, value, pos);
}
+OFCondition DRTImageIOD::getPregnancyStatus(Uint16 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmUnsignedShort &, PregnancyStatus).getUint16(value, pos);
+}
+
+
OFCondition DRTImageIOD::getPresentationLUTShape(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PresentationLUTShape, value, pos);
}
+OFCondition DRTImageIOD::getSmokingStatus(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(SmokingStatus, value, pos);
+}
+
+
OFCondition DRTImageIOD::getSoftwareVersions(OFString &value, const signed long pos) const
{
return getStringValueFromElement(SoftwareVersions, value, pos);
}
+OFCondition DRTImageIOD::getStrainAdditionalInformation(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainAdditionalInformation, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getStrainDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainDescription, value, pos);
+}
+
+
+OFCondition DRTImageIOD::getStrainNomenclature(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainNomenclature, value, pos);
+}
+
+
OFCondition DRTImageIOD::getStudyDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(StudyDate, value, pos);
}
+OFCondition DRTImageIOD::setAllergies(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = Allergies.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setApprovalStatus(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setColorSpace(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ColorSpace.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setColumns(const Uint16 value, const unsigned long pos)
{
return Columns.putUint16(value, pos);
}
+OFCondition DRTImageIOD::setExposureTime(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmIntegerString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ExposureTime.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTImageIOD::setExposureTimeInms(const Float64 value, const unsigned long pos)
+{
+ return ExposureTimeInms.putFloat64(value, pos);
+}
+
+
OFCondition DRTImageIOD::setFractionNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmIntegerString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setLastMenstrualDate(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LastMenstrualDate.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setLongitudinalTemporalInformationModified(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setMeasuredAPDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredAPDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTImageIOD::setMeasuredLateralDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredLateralDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTImageIOD::setMedicalAlerts(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = MedicalAlerts.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTImageIOD::setMetersetExposure(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MetersetExposure.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setModality(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setPatientAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setPatientBirthDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBirthDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setPatientBirthTime(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setPatientBodyMassIndex(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBodyMassIndex.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setPatientBreedDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientDeathDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setPatientID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setPatientState(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientState.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setPatientSupportAngle(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setPregnancyStatus(const Uint16 value, const unsigned long pos)
+{
+ return PregnancyStatus.putUint16(value, pos);
+}
+
+
OFCondition DRTImageIOD::setPresentationLUTShape(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTImageIOD::setSmokingStatus(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = SmokingStatus.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setSoftwareVersions(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
}
+OFCondition DRTImageIOD::setStrainAdditionalInformation(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = StrainAdditionalInformation.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTImageIOD::setStrainDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainDescription.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTImageIOD::setStrainNomenclature(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainNomenclature.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTImageIOD::setStudyDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonPlanIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
IssuerOfPatientID(DCM_IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(),
PatientBirthDate(DCM_PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(DCM_PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(DCM_PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(DCM_PatientAlternativeCalendar),
PatientSex(DCM_PatientSex),
ReferencedPatientPhotoSequence(),
QualityControlSubject(DCM_QualityControlSubject),
PatientBreedDescription(DCM_PatientBreedDescription),
PatientBreedCodeSequence(),
BreedRegistrationSequence(),
+ StrainDescription(DCM_StrainDescription),
+ StrainNomenclature(DCM_StrainNomenclature),
+ StrainCodeSequence(),
+ StrainAdditionalInformation(DCM_StrainAdditionalInformation),
+ StrainStockSequence(),
ResponsiblePerson(DCM_ResponsiblePerson),
ResponsiblePersonRole(DCM_ResponsiblePersonRole),
ResponsibleOrganization(DCM_ResponsibleOrganization),
PatientIdentityRemoved(DCM_PatientIdentityRemoved),
DeidentificationMethod(DCM_DeidentificationMethod),
DeidentificationMethodCodeSequence(),
+ SourcePatientGroupIdentificationSequence(),
+ GroupOfPatientsIdentificationSequence(),
ClinicalTrialSponsorName(DCM_ClinicalTrialSponsorName),
ClinicalTrialProtocolID(DCM_ClinicalTrialProtocolID),
ClinicalTrialProtocolName(DCM_ClinicalTrialProtocolName),
PatientAge(DCM_PatientAge),
PatientSize(DCM_PatientSize),
PatientWeight(DCM_PatientWeight),
+ PatientBodyMassIndex(DCM_PatientBodyMassIndex),
+ MeasuredAPDimension(DCM_MeasuredAPDimension),
+ MeasuredLateralDimension(DCM_MeasuredLateralDimension),
PatientSizeCodeSequence(),
+ MedicalAlerts(DCM_MedicalAlerts),
+ Allergies(DCM_Allergies),
+ SmokingStatus(DCM_SmokingStatus),
+ PregnancyStatus(DCM_PregnancyStatus),
+ LastMenstrualDate(DCM_LastMenstrualDate),
+ PatientState(DCM_PatientState),
Occupation(DCM_Occupation),
AdditionalPatientHistory(DCM_AdditionalPatientHistory),
AdmissionID(DCM_AdmissionID),
SeriesDescription(DCM_SeriesDescription),
SeriesDescriptionCodeSequence(),
OperatorsName(DCM_OperatorsName),
+ OperatorIdentificationSequence(),
ReferencedPerformedProcedureStepSequence(),
RequestAttributesSequence(),
PerformedProcedureStepID(DCM_PerformedProcedureStepID),
DeviceSerialNumber(DCM_DeviceSerialNumber),
SoftwareVersions(DCM_SoftwareVersions),
GantryID(DCM_GantryID),
+ UDISequence(),
SpatialResolution(DCM_SpatialResolution),
DateOfLastCalibration(DCM_DateOfLastCalibration),
TimeOfLastCalibration(DCM_TimeOfLastCalibration),
ReferencedStructureSetSequence(),
ReferencedDoseSequence(),
ReferencedRTPlanSequence(),
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(DCM_FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix),
PrescriptionDescription(DCM_PrescriptionDescription),
DoseReferenceSequence(),
IonToleranceTableSequence(),
ReviewDate(DCM_ReviewDate),
ReviewTime(DCM_ReviewTime),
ReviewerName(DCM_ReviewerName),
+ ReferencedImageSequence(),
+ ReferencedInstanceSequence(),
+ DerivationDescription(DCM_DerivationDescription),
+ DerivationCodeSequence(),
+ SourceImageSequence(),
+ SourceInstanceSequence(),
SOPClassUID(DCM_SOPClassUID),
SOPInstanceUID(DCM_SOPInstanceUID),
SpecificCharacterSet(DCM_SpecificCharacterSet),
RelatedGeneralSOPClassUID(DCM_RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(DCM_OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(),
+ ContextGroupIdentificationSequence(),
+ MappingResourceIdentificationSequence(),
TimezoneOffsetFromUTC(DCM_TimezoneOffsetFromUTC),
ContributingEquipmentSequence(),
SOPInstanceStatus(DCM_SOPInstanceStatus),
IssuerOfPatientID(copy.IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
PatientBirthDate(copy.PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(copy.PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(copy.PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(copy.PatientAlternativeCalendar),
PatientSex(copy.PatientSex),
ReferencedPatientPhotoSequence(copy.ReferencedPatientPhotoSequence),
QualityControlSubject(copy.QualityControlSubject),
PatientBreedDescription(copy.PatientBreedDescription),
PatientBreedCodeSequence(copy.PatientBreedCodeSequence),
BreedRegistrationSequence(copy.BreedRegistrationSequence),
+ StrainDescription(copy.StrainDescription),
+ StrainNomenclature(copy.StrainNomenclature),
+ StrainCodeSequence(copy.StrainCodeSequence),
+ StrainAdditionalInformation(copy.StrainAdditionalInformation),
+ StrainStockSequence(copy.StrainStockSequence),
ResponsiblePerson(copy.ResponsiblePerson),
ResponsiblePersonRole(copy.ResponsiblePersonRole),
ResponsibleOrganization(copy.ResponsibleOrganization),
PatientIdentityRemoved(copy.PatientIdentityRemoved),
DeidentificationMethod(copy.DeidentificationMethod),
DeidentificationMethodCodeSequence(copy.DeidentificationMethodCodeSequence),
+ SourcePatientGroupIdentificationSequence(copy.SourcePatientGroupIdentificationSequence),
+ GroupOfPatientsIdentificationSequence(copy.GroupOfPatientsIdentificationSequence),
ClinicalTrialSponsorName(copy.ClinicalTrialSponsorName),
ClinicalTrialProtocolID(copy.ClinicalTrialProtocolID),
ClinicalTrialProtocolName(copy.ClinicalTrialProtocolName),
PatientAge(copy.PatientAge),
PatientSize(copy.PatientSize),
PatientWeight(copy.PatientWeight),
+ PatientBodyMassIndex(copy.PatientBodyMassIndex),
+ MeasuredAPDimension(copy.MeasuredAPDimension),
+ MeasuredLateralDimension(copy.MeasuredLateralDimension),
PatientSizeCodeSequence(copy.PatientSizeCodeSequence),
+ MedicalAlerts(copy.MedicalAlerts),
+ Allergies(copy.Allergies),
+ SmokingStatus(copy.SmokingStatus),
+ PregnancyStatus(copy.PregnancyStatus),
+ LastMenstrualDate(copy.LastMenstrualDate),
+ PatientState(copy.PatientState),
Occupation(copy.Occupation),
AdditionalPatientHistory(copy.AdditionalPatientHistory),
AdmissionID(copy.AdmissionID),
SeriesDescription(copy.SeriesDescription),
SeriesDescriptionCodeSequence(copy.SeriesDescriptionCodeSequence),
OperatorsName(copy.OperatorsName),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
ReferencedPerformedProcedureStepSequence(copy.ReferencedPerformedProcedureStepSequence),
RequestAttributesSequence(copy.RequestAttributesSequence),
PerformedProcedureStepID(copy.PerformedProcedureStepID),
DeviceSerialNumber(copy.DeviceSerialNumber),
SoftwareVersions(copy.SoftwareVersions),
GantryID(copy.GantryID),
+ UDISequence(copy.UDISequence),
SpatialResolution(copy.SpatialResolution),
DateOfLastCalibration(copy.DateOfLastCalibration),
TimeOfLastCalibration(copy.TimeOfLastCalibration),
ReferencedStructureSetSequence(copy.ReferencedStructureSetSequence),
ReferencedDoseSequence(copy.ReferencedDoseSequence),
ReferencedRTPlanSequence(copy.ReferencedRTPlanSequence),
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(copy.FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix),
PrescriptionDescription(copy.PrescriptionDescription),
DoseReferenceSequence(copy.DoseReferenceSequence),
IonToleranceTableSequence(copy.IonToleranceTableSequence),
ReviewDate(copy.ReviewDate),
ReviewTime(copy.ReviewTime),
ReviewerName(copy.ReviewerName),
+ ReferencedImageSequence(copy.ReferencedImageSequence),
+ ReferencedInstanceSequence(copy.ReferencedInstanceSequence),
+ DerivationDescription(copy.DerivationDescription),
+ DerivationCodeSequence(copy.DerivationCodeSequence),
+ SourceImageSequence(copy.SourceImageSequence),
+ SourceInstanceSequence(copy.SourceInstanceSequence),
SOPClassUID(copy.SOPClassUID),
SOPInstanceUID(copy.SOPInstanceUID),
SpecificCharacterSet(copy.SpecificCharacterSet),
RelatedGeneralSOPClassUID(copy.RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(copy.OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(copy.CodingSchemeIdentificationSequence),
+ ContextGroupIdentificationSequence(copy.ContextGroupIdentificationSequence),
+ MappingResourceIdentificationSequence(copy.MappingResourceIdentificationSequence),
TimezoneOffsetFromUTC(copy.TimezoneOffsetFromUTC),
ContributingEquipmentSequence(copy.ContributingEquipmentSequence),
SOPInstanceStatus(copy.SOPInstanceStatus),
IssuerOfPatientID = copy.IssuerOfPatientID;
IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
PatientBirthDate = copy.PatientBirthDate;
+ PatientBirthDateInAlternativeCalendar = copy.PatientBirthDateInAlternativeCalendar;
+ PatientDeathDateInAlternativeCalendar = copy.PatientDeathDateInAlternativeCalendar;
+ PatientAlternativeCalendar = copy.PatientAlternativeCalendar;
PatientSex = copy.PatientSex;
ReferencedPatientPhotoSequence = copy.ReferencedPatientPhotoSequence;
QualityControlSubject = copy.QualityControlSubject;
PatientBreedDescription = copy.PatientBreedDescription;
PatientBreedCodeSequence = copy.PatientBreedCodeSequence;
BreedRegistrationSequence = copy.BreedRegistrationSequence;
+ StrainDescription = copy.StrainDescription;
+ StrainNomenclature = copy.StrainNomenclature;
+ StrainCodeSequence = copy.StrainCodeSequence;
+ StrainAdditionalInformation = copy.StrainAdditionalInformation;
+ StrainStockSequence = copy.StrainStockSequence;
ResponsiblePerson = copy.ResponsiblePerson;
ResponsiblePersonRole = copy.ResponsiblePersonRole;
ResponsibleOrganization = copy.ResponsibleOrganization;
PatientIdentityRemoved = copy.PatientIdentityRemoved;
DeidentificationMethod = copy.DeidentificationMethod;
DeidentificationMethodCodeSequence = copy.DeidentificationMethodCodeSequence;
+ SourcePatientGroupIdentificationSequence = copy.SourcePatientGroupIdentificationSequence;
+ GroupOfPatientsIdentificationSequence = copy.GroupOfPatientsIdentificationSequence;
ClinicalTrialSponsorName = copy.ClinicalTrialSponsorName;
ClinicalTrialProtocolID = copy.ClinicalTrialProtocolID;
ClinicalTrialProtocolName = copy.ClinicalTrialProtocolName;
PatientAge = copy.PatientAge;
PatientSize = copy.PatientSize;
PatientWeight = copy.PatientWeight;
+ PatientBodyMassIndex = copy.PatientBodyMassIndex;
+ MeasuredAPDimension = copy.MeasuredAPDimension;
+ MeasuredLateralDimension = copy.MeasuredLateralDimension;
PatientSizeCodeSequence = copy.PatientSizeCodeSequence;
+ MedicalAlerts = copy.MedicalAlerts;
+ Allergies = copy.Allergies;
+ SmokingStatus = copy.SmokingStatus;
+ PregnancyStatus = copy.PregnancyStatus;
+ LastMenstrualDate = copy.LastMenstrualDate;
+ PatientState = copy.PatientState;
Occupation = copy.Occupation;
AdditionalPatientHistory = copy.AdditionalPatientHistory;
AdmissionID = copy.AdmissionID;
SeriesDescription = copy.SeriesDescription;
SeriesDescriptionCodeSequence = copy.SeriesDescriptionCodeSequence;
OperatorsName = copy.OperatorsName;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
ReferencedPerformedProcedureStepSequence = copy.ReferencedPerformedProcedureStepSequence;
RequestAttributesSequence = copy.RequestAttributesSequence;
PerformedProcedureStepID = copy.PerformedProcedureStepID;
DeviceSerialNumber = copy.DeviceSerialNumber;
SoftwareVersions = copy.SoftwareVersions;
GantryID = copy.GantryID;
+ UDISequence = copy.UDISequence;
SpatialResolution = copy.SpatialResolution;
DateOfLastCalibration = copy.DateOfLastCalibration;
TimeOfLastCalibration = copy.TimeOfLastCalibration;
ReferencedStructureSetSequence = copy.ReferencedStructureSetSequence;
ReferencedDoseSequence = copy.ReferencedDoseSequence;
ReferencedRTPlanSequence = copy.ReferencedRTPlanSequence;
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix = copy.FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix;
PrescriptionDescription = copy.PrescriptionDescription;
DoseReferenceSequence = copy.DoseReferenceSequence;
IonToleranceTableSequence = copy.IonToleranceTableSequence;
ReviewDate = copy.ReviewDate;
ReviewTime = copy.ReviewTime;
ReviewerName = copy.ReviewerName;
+ ReferencedImageSequence = copy.ReferencedImageSequence;
+ ReferencedInstanceSequence = copy.ReferencedInstanceSequence;
+ DerivationDescription = copy.DerivationDescription;
+ DerivationCodeSequence = copy.DerivationCodeSequence;
+ SourceImageSequence = copy.SourceImageSequence;
+ SourceInstanceSequence = copy.SourceInstanceSequence;
SOPClassUID = copy.SOPClassUID;
SOPInstanceUID = copy.SOPInstanceUID;
SpecificCharacterSet = copy.SpecificCharacterSet;
RelatedGeneralSOPClassUID = copy.RelatedGeneralSOPClassUID;
OriginalSpecializedSOPClassUID = copy.OriginalSpecializedSOPClassUID;
CodingSchemeIdentificationSequence = copy.CodingSchemeIdentificationSequence;
+ ContextGroupIdentificationSequence = copy.ContextGroupIdentificationSequence;
+ MappingResourceIdentificationSequence = copy.MappingResourceIdentificationSequence;
TimezoneOffsetFromUTC = copy.TimezoneOffsetFromUTC;
ContributingEquipmentSequence = copy.ContributingEquipmentSequence;
SOPInstanceStatus = copy.SOPInstanceStatus;
IssuerOfPatientID.clear();
IssuerOfPatientIDQualifiersSequence.clear();
PatientBirthDate.clear();
+ PatientBirthDateInAlternativeCalendar.clear();
+ PatientDeathDateInAlternativeCalendar.clear();
+ PatientAlternativeCalendar.clear();
PatientSex.clear();
ReferencedPatientPhotoSequence.clear();
QualityControlSubject.clear();
PatientBreedDescription.clear();
PatientBreedCodeSequence.clear();
BreedRegistrationSequence.clear();
+ StrainDescription.clear();
+ StrainNomenclature.clear();
+ StrainCodeSequence.clear();
+ StrainAdditionalInformation.clear();
+ StrainStockSequence.clear();
ResponsiblePerson.clear();
ResponsiblePersonRole.clear();
ResponsibleOrganization.clear();
PatientIdentityRemoved.clear();
DeidentificationMethod.clear();
DeidentificationMethodCodeSequence.clear();
+ SourcePatientGroupIdentificationSequence.clear();
+ GroupOfPatientsIdentificationSequence.clear();
ClinicalTrialSponsorName.clear();
ClinicalTrialProtocolID.clear();
ClinicalTrialProtocolName.clear();
PatientAge.clear();
PatientSize.clear();
PatientWeight.clear();
+ PatientBodyMassIndex.clear();
+ MeasuredAPDimension.clear();
+ MeasuredLateralDimension.clear();
PatientSizeCodeSequence.clear();
+ MedicalAlerts.clear();
+ Allergies.clear();
+ SmokingStatus.clear();
+ PregnancyStatus.clear();
+ LastMenstrualDate.clear();
+ PatientState.clear();
Occupation.clear();
AdditionalPatientHistory.clear();
AdmissionID.clear();
SeriesDescription.clear();
SeriesDescriptionCodeSequence.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
ReferencedPerformedProcedureStepSequence.clear();
RequestAttributesSequence.clear();
PerformedProcedureStepID.clear();
DeviceSerialNumber.clear();
SoftwareVersions.clear();
GantryID.clear();
+ UDISequence.clear();
SpatialResolution.clear();
DateOfLastCalibration.clear();
TimeOfLastCalibration.clear();
ReferencedStructureSetSequence.clear();
ReferencedDoseSequence.clear();
ReferencedRTPlanSequence.clear();
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix.clear();
PrescriptionDescription.clear();
DoseReferenceSequence.clear();
IonToleranceTableSequence.clear();
ReviewDate.clear();
ReviewTime.clear();
ReviewerName.clear();
+ ReferencedImageSequence.clear();
+ ReferencedInstanceSequence.clear();
+ DerivationDescription.clear();
+ DerivationCodeSequence.clear();
+ SourceImageSequence.clear();
+ SourceInstanceSequence.clear();
SOPClassUID.clear();
SOPInstanceUID.clear();
SpecificCharacterSet.clear();
RelatedGeneralSOPClassUID.clear();
OriginalSpecializedSOPClassUID.clear();
CodingSchemeIdentificationSequence.clear();
+ ContextGroupIdentificationSequence.clear();
+ MappingResourceIdentificationSequence.clear();
TimezoneOffsetFromUTC.clear();
ContributingEquipmentSequence.clear();
SOPInstanceStatus.clear();
getAndCheckElementFromDataset(dataset, DeviceSerialNumber, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SoftwareVersions, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, GantryID, "1", "3", "GeneralEquipmentModule");
+ UDISequence.read(dataset, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SpatialResolution, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, DateOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, TimeOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
ReferencedStructureSetSequence.read(dataset, "1-n", "1C", "RTGeneralPlanModule");
ReferencedDoseSequence.read(dataset, "1-n", "3", "RTGeneralPlanModule");
ReferencedRTPlanSequence.read(dataset, "1-n", "3", "RTGeneralPlanModule");
+ getAndCheckElementFromDataset(dataset, FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix, "16", "3", "RTGeneralPlanModule");
// --- RTPrescriptionModule (U) ---
getAndCheckElementFromDataset(dataset, PrescriptionDescription, "1", "3", "RTPrescriptionModule");
getAndCheckElementFromDataset(dataset, ReviewerName, "1", "2C", "ApprovalModule");
}
+ // --- GeneralReferenceModule (U) ---
+ ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralReferenceModule");
+ DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+
// --- SOPCommonModule (M) ---
getAndCheckElementFromDataset(dataset, SOPClassUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, SOPInstanceUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, RelatedGeneralSOPClassUID, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, OriginalSpecializedSOPClassUID, "1", "3", "SOPCommonModule");
CodingSchemeIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ ContextGroupIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ MappingResourceIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, TimezoneOffsetFromUTC, "1", "3", "SOPCommonModule");
ContributingEquipmentSequence.read(dataset, "1-n", "3", "SOPCommonModule");
// getAndCheckElementFromDataset(dataset, InstanceNumber, "1", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, IssuerOfPatientID, "1", "3", "PatientModule");
IssuerOfPatientIDQualifiersSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBirthDate, "1", "2", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientBirthDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientDeathDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientAlternativeCalendar, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientSex, "1", "2", "PatientModule");
ReferencedPatientPhotoSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, QualityControlSubject, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBreedDescription, "1", "2C", "PatientModule");
PatientBreedCodeSequence.read(dataset, "1-n", "2C", "PatientModule");
BreedRegistrationSequence.read(dataset, "1-n", "2C", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainDescription, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainNomenclature, "1", "3", "PatientModule");
+ StrainCodeSequence.read(dataset, "1-n", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainAdditionalInformation, "1", "3", "PatientModule");
+ StrainStockSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePerson, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePersonRole, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsibleOrganization, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientIdentityRemoved, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, DeidentificationMethod, "1-n", "1C", "PatientModule");
DeidentificationMethodCodeSequence.read(dataset, "1-n", "1C", "PatientModule");
+ SourcePatientGroupIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
+ GroupOfPatientsIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (dataset.tagExists(DCM_ClinicalTrialSponsorName) ||
getAndCheckElementFromDataset(dataset, PatientAge, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientSize, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientWeight, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientBodyMassIndex, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredAPDimension, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredLateralDimension, "1", "3", "PatientStudyModule");
PatientSizeCodeSequence.read(dataset, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MedicalAlerts, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, Allergies, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, SmokingStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PregnancyStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, LastMenstrualDate, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientState, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, Occupation, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdditionalPatientHistory, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdmissionID, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, SeriesDescription, "1", "3", "RTSeriesModule");
SeriesDescriptionCodeSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, OperatorsName, "1-n", "2", "RTSeriesModule");
+ OperatorIdentificationSequence.read(dataset, "1-n", "3", "RTSeriesModule");
ReferencedPerformedProcedureStepSequence.read(dataset, "1-n", "3", "RTSeriesModule");
RequestAttributesSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, PerformedProcedureStepID, "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(IssuerOfPatientID), "1", "3", "PatientModule");
if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmDate(PatientBirthDate), "1", "2", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientBirthDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientDeathDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmCodeString(PatientAlternativeCalendar), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientSex), "1", "2", "PatientModule");
if (result.good()) result = ReferencedPatientPhotoSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlSubject), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(PatientBreedDescription), "1", "2C", "PatientModule");
if (result.good()) result = PatientBreedCodeSequence.write(dataset, "1-n" ,"2C", "PatientModule");
if (result.good()) result = BreedRegistrationSequence.write(dataset, "1-n" ,"2C", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedCharacters(StrainDescription), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(StrainNomenclature), "1", "3", "PatientModule");
+ if (result.good()) result = StrainCodeSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedText(StrainAdditionalInformation), "1", "3", "PatientModule");
+ if (result.good()) result = StrainStockSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmPersonName(ResponsiblePerson), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(ResponsiblePersonRole), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(ResponsibleOrganization), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientIdentityRemoved), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(DeidentificationMethod), "1-n", "1C", "PatientModule");
if (result.good()) result = DeidentificationMethodCodeSequence.write(dataset, "1-n" ,"1C", "PatientModule");
+ if (result.good()) result = SourcePatientGroupIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ if (result.good()) result = GroupOfPatientsIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (isClinicalTrialSubjectModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmAgeString(PatientAge), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientSize), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientWeight), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(PatientBodyMassIndex), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredAPDimension), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredLateralDimension), "1", "3", "PatientStudyModule");
if (result.good()) result = PatientSizeCodeSequence.write(dataset, "1-n" ,"3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(MedicalAlerts), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(Allergies), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmCodeString(SmokingStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmUnsignedShort(PregnancyStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDate(LastMenstrualDate), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientState), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmShortString(Occupation), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongText(AdditionalPatientHistory), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(AdmissionID), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(SeriesDescription), "1", "3", "RTSeriesModule");
if (result.good()) result = SeriesDescriptionCodeSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmPersonName(OperatorsName), "1-n", "2", "RTSeriesModule");
+ if (result.good()) result = OperatorIdentificationSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = ReferencedPerformedProcedureStepSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = RequestAttributesSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmShortString(PerformedProcedureStepID), "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(DeviceSerialNumber), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(SoftwareVersions), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(GantryID), "1", "3", "GeneralEquipmentModule");
+ if (result.good()) result = UDISequence.write(dataset, "1-n" ,"3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDecimalString(SpatialResolution), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(DateOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmTime(TimeOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
if (result.good()) result = ReferencedStructureSetSequence.write(dataset, "1-n" ,"1C", "RTGeneralPlanModule");
if (result.good()) result = ReferencedDoseSequence.write(dataset, "1-n" ,"3", "RTGeneralPlanModule");
if (result.good()) result = ReferencedRTPlanSequence.write(dataset, "1-n" ,"3", "RTGeneralPlanModule");
+ addElementToDataset(result, dataset, new DcmFloatingPointDouble(FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix), "16", "3", "RTGeneralPlanModule");
// --- RTPrescriptionModule (U) ---
if (isRTPrescriptionModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmPersonName(ReviewerName), "1", "2C", "ApprovalModule");
}
+ // --- GeneralReferenceModule (U) ---
+ if (isGeneralReferenceModulePresent(OFFalse /*complete*/))
+ {
+ if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralReferenceModule");
+ if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ }
+
// --- SOPCommonModule (M) ---
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPClassUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPInstanceUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(RelatedGeneralSOPClassUID), "1-n", "3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(OriginalSpecializedSOPClassUID), "1", "3", "SOPCommonModule");
if (result.good()) result = CodingSchemeIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = ContextGroupIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = MappingResourceIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmShortString(TimezoneOffsetFromUTC), "1", "3", "SOPCommonModule");
if (result.good()) result = ContributingEquipmentSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
// addElementToDataset(result, dataset, new DcmIntegerString(InstanceNumber), "1", "3", "SOPCommonModule");
!PatientAge.isEmpty() ||
!PatientSize.isEmpty() ||
!PatientWeight.isEmpty() ||
+ !PatientBodyMassIndex.isEmpty() ||
+ !MeasuredAPDimension.isEmpty() ||
+ !MeasuredLateralDimension.isEmpty() ||
!PatientSizeCodeSequence.isEmpty() ||
+ !MedicalAlerts.isEmpty() ||
+ !Allergies.isEmpty() ||
+ !SmokingStatus.isEmpty() ||
+ !PregnancyStatus.isEmpty() ||
+ !LastMenstrualDate.isEmpty() ||
+ !PatientState.isEmpty() ||
!Occupation.isEmpty() ||
!AdditionalPatientHistory.isEmpty() ||
!AdmissionID.isEmpty() ||
}
+OFBool DRTIonPlanIOD::isGeneralReferenceModulePresent(const OFBool /*complete*/)
+{
+ /* check whether at least one attribute is present */
+ return !ReferencedImageSequence.isEmpty() ||
+ !ReferencedInstanceSequence.isEmpty() ||
+ !DerivationDescription.isEmpty() ||
+ !DerivationCodeSequence.isEmpty() ||
+ !SourceImageSequence.isEmpty() ||
+ !SourceInstanceSequence.isEmpty();
+}
+
+
OFBool DRTIonPlanIOD::isCommonInstanceReferenceModulePresent(const OFBool /*complete*/)
{
/* check whether at least one attribute is present */
}
+OFCondition DRTIonPlanIOD::getAllergies(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(Allergies, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getApprovalStatus(OFString &value, const signed long pos) const
{
return getStringValueFromElement(ApprovalStatus, value, pos);
}
+OFCondition DRTIonPlanIOD::getDerivationDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(DerivationDescription, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getDeviceSerialNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(DeviceSerialNumber, value, pos);
}
+OFCondition DRTIonPlanIOD::getFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmFloatingPointDouble &, FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix).getFloat64(value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getFrameOfReferenceUID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(FrameOfReferenceUID, value, pos);
}
+OFCondition DRTIonPlanIOD::getLastMenstrualDate(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(LastMenstrualDate, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getLongitudinalTemporalInformationModified(OFString &value, const signed long pos) const
{
return getStringValueFromElement(LongitudinalTemporalInformationModified, value, pos);
}
+OFCondition DRTIonPlanIOD::getMeasuredAPDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredAPDimension, value, pos);
+}
+
+
+OFCondition DRTIonPlanIOD::getMeasuredAPDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredAPDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTIonPlanIOD::getMeasuredLateralDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredLateralDimension, value, pos);
+}
+
+
+OFCondition DRTIonPlanIOD::getMeasuredLateralDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredLateralDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTIonPlanIOD::getMedicalAlerts(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MedicalAlerts, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getModality(OFString &value, const signed long pos) const
{
return getStringValueFromElement(Modality, value, pos);
}
+OFCondition DRTIonPlanIOD::getPatientAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getPatientBirthDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthDate, value, pos);
}
+OFCondition DRTIonPlanIOD::getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBirthDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getPatientBirthTime(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthTime, value, pos);
}
+OFCondition DRTIonPlanIOD::getPatientBodyMassIndex(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBodyMassIndex, value, pos);
+}
+
+
+OFCondition DRTIonPlanIOD::getPatientBodyMassIndex(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, PatientBodyMassIndex).getFloat64(value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getPatientBreedDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBreedDescription, value, pos);
}
+OFCondition DRTIonPlanIOD::getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientDeathDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getPatientID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientID, value, pos);
}
+OFCondition DRTIonPlanIOD::getPatientState(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientState, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getPatientWeight(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientWeight, value, pos);
}
+OFCondition DRTIonPlanIOD::getPregnancyStatus(Uint16 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmUnsignedShort &, PregnancyStatus).getUint16(value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getPrescriptionDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PrescriptionDescription, value, pos);
}
+OFCondition DRTIonPlanIOD::getSmokingStatus(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(SmokingStatus, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getSoftwareVersions(OFString &value, const signed long pos) const
{
return getStringValueFromElement(SoftwareVersions, value, pos);
}
+OFCondition DRTIonPlanIOD::getStrainAdditionalInformation(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainAdditionalInformation, value, pos);
+}
+
+
+OFCondition DRTIonPlanIOD::getStrainDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainDescription, value, pos);
+}
+
+
+OFCondition DRTIonPlanIOD::getStrainNomenclature(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainNomenclature, value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::getStudyDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(StudyDate, value, pos);
}
+OFCondition DRTIonPlanIOD::setAllergies(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = Allergies.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setApprovalStatus(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setDerivationDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = DerivationDescription.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setDeviceSerialNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(const Float64 value, const unsigned long pos)
+{
+ return FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix.putFloat64(value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::setFrameOfReferenceUID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setLastMenstrualDate(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LastMenstrualDate.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setLongitudinalTemporalInformationModified(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setMeasuredAPDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredAPDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonPlanIOD::setMeasuredLateralDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredLateralDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonPlanIOD::setMedicalAlerts(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = MedicalAlerts.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setModality(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setPatientAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setPatientBirthDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBirthDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setPatientBirthTime(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setPatientBodyMassIndex(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBodyMassIndex.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setPatientBreedDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientDeathDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setPatientID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setPatientState(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientState.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setPatientWeight(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setPregnancyStatus(const Uint16 value, const unsigned long pos)
+{
+ return PregnancyStatus.putUint16(value, pos);
+}
+
+
OFCondition DRTIonPlanIOD::setPrescriptionDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setSmokingStatus(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = SmokingStatus.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setSoftwareVersions(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
}
+OFCondition DRTIonPlanIOD::setStrainAdditionalInformation(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = StrainAdditionalInformation.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonPlanIOD::setStrainDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainDescription.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonPlanIOD::setStrainNomenclature(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainNomenclature.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonPlanIOD::setStudyDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonBeamsTreatmentRecordIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
IssuerOfPatientID(DCM_IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(),
PatientBirthDate(DCM_PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(DCM_PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(DCM_PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(DCM_PatientAlternativeCalendar),
PatientSex(DCM_PatientSex),
ReferencedPatientPhotoSequence(),
QualityControlSubject(DCM_QualityControlSubject),
PatientBreedDescription(DCM_PatientBreedDescription),
PatientBreedCodeSequence(),
BreedRegistrationSequence(),
+ StrainDescription(DCM_StrainDescription),
+ StrainNomenclature(DCM_StrainNomenclature),
+ StrainCodeSequence(),
+ StrainAdditionalInformation(DCM_StrainAdditionalInformation),
+ StrainStockSequence(),
ResponsiblePerson(DCM_ResponsiblePerson),
ResponsiblePersonRole(DCM_ResponsiblePersonRole),
ResponsibleOrganization(DCM_ResponsibleOrganization),
PatientIdentityRemoved(DCM_PatientIdentityRemoved),
DeidentificationMethod(DCM_DeidentificationMethod),
DeidentificationMethodCodeSequence(),
+ SourcePatientGroupIdentificationSequence(),
+ GroupOfPatientsIdentificationSequence(),
ClinicalTrialSponsorName(DCM_ClinicalTrialSponsorName),
ClinicalTrialProtocolID(DCM_ClinicalTrialProtocolID),
ClinicalTrialProtocolName(DCM_ClinicalTrialProtocolName),
PatientAge(DCM_PatientAge),
PatientSize(DCM_PatientSize),
PatientWeight(DCM_PatientWeight),
+ PatientBodyMassIndex(DCM_PatientBodyMassIndex),
+ MeasuredAPDimension(DCM_MeasuredAPDimension),
+ MeasuredLateralDimension(DCM_MeasuredLateralDimension),
PatientSizeCodeSequence(),
+ MedicalAlerts(DCM_MedicalAlerts),
+ Allergies(DCM_Allergies),
+ SmokingStatus(DCM_SmokingStatus),
+ PregnancyStatus(DCM_PregnancyStatus),
+ LastMenstrualDate(DCM_LastMenstrualDate),
+ PatientState(DCM_PatientState),
Occupation(DCM_Occupation),
AdditionalPatientHistory(DCM_AdditionalPatientHistory),
AdmissionID(DCM_AdmissionID),
SeriesDescription(DCM_SeriesDescription),
SeriesDescriptionCodeSequence(),
OperatorsName(DCM_OperatorsName),
+ OperatorIdentificationSequence(),
ReferencedPerformedProcedureStepSequence(),
RequestAttributesSequence(),
PerformedProcedureStepID(DCM_PerformedProcedureStepID),
DeviceSerialNumber(DCM_DeviceSerialNumber),
SoftwareVersions(DCM_SoftwareVersions),
GantryID(DCM_GantryID),
+ UDISequence(),
SpatialResolution(DCM_SpatialResolution),
DateOfLastCalibration(DCM_DateOfLastCalibration),
TimeOfLastCalibration(DCM_TimeOfLastCalibration),
FractionGroupSummarySequence(),
TreatmentSummaryMeasuredDoseReferenceSequence(),
TreatmentSummaryCalculatedDoseReferenceSequence(),
+ ReferencedImageSequence(),
+ ReferencedInstanceSequence(),
+ DerivationDescription(DCM_DerivationDescription),
+ DerivationCodeSequence(),
+ SourceImageSequence(),
+ SourceInstanceSequence(),
SOPClassUID(DCM_SOPClassUID),
SOPInstanceUID(DCM_SOPInstanceUID),
SpecificCharacterSet(DCM_SpecificCharacterSet),
RelatedGeneralSOPClassUID(DCM_RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(DCM_OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(),
+ ContextGroupIdentificationSequence(),
+ MappingResourceIdentificationSequence(),
TimezoneOffsetFromUTC(DCM_TimezoneOffsetFromUTC),
ContributingEquipmentSequence(),
SOPInstanceStatus(DCM_SOPInstanceStatus),
IssuerOfPatientID(copy.IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
PatientBirthDate(copy.PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(copy.PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(copy.PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(copy.PatientAlternativeCalendar),
PatientSex(copy.PatientSex),
ReferencedPatientPhotoSequence(copy.ReferencedPatientPhotoSequence),
QualityControlSubject(copy.QualityControlSubject),
PatientBreedDescription(copy.PatientBreedDescription),
PatientBreedCodeSequence(copy.PatientBreedCodeSequence),
BreedRegistrationSequence(copy.BreedRegistrationSequence),
+ StrainDescription(copy.StrainDescription),
+ StrainNomenclature(copy.StrainNomenclature),
+ StrainCodeSequence(copy.StrainCodeSequence),
+ StrainAdditionalInformation(copy.StrainAdditionalInformation),
+ StrainStockSequence(copy.StrainStockSequence),
ResponsiblePerson(copy.ResponsiblePerson),
ResponsiblePersonRole(copy.ResponsiblePersonRole),
ResponsibleOrganization(copy.ResponsibleOrganization),
PatientIdentityRemoved(copy.PatientIdentityRemoved),
DeidentificationMethod(copy.DeidentificationMethod),
DeidentificationMethodCodeSequence(copy.DeidentificationMethodCodeSequence),
+ SourcePatientGroupIdentificationSequence(copy.SourcePatientGroupIdentificationSequence),
+ GroupOfPatientsIdentificationSequence(copy.GroupOfPatientsIdentificationSequence),
ClinicalTrialSponsorName(copy.ClinicalTrialSponsorName),
ClinicalTrialProtocolID(copy.ClinicalTrialProtocolID),
ClinicalTrialProtocolName(copy.ClinicalTrialProtocolName),
PatientAge(copy.PatientAge),
PatientSize(copy.PatientSize),
PatientWeight(copy.PatientWeight),
+ PatientBodyMassIndex(copy.PatientBodyMassIndex),
+ MeasuredAPDimension(copy.MeasuredAPDimension),
+ MeasuredLateralDimension(copy.MeasuredLateralDimension),
PatientSizeCodeSequence(copy.PatientSizeCodeSequence),
+ MedicalAlerts(copy.MedicalAlerts),
+ Allergies(copy.Allergies),
+ SmokingStatus(copy.SmokingStatus),
+ PregnancyStatus(copy.PregnancyStatus),
+ LastMenstrualDate(copy.LastMenstrualDate),
+ PatientState(copy.PatientState),
Occupation(copy.Occupation),
AdditionalPatientHistory(copy.AdditionalPatientHistory),
AdmissionID(copy.AdmissionID),
SeriesDescription(copy.SeriesDescription),
SeriesDescriptionCodeSequence(copy.SeriesDescriptionCodeSequence),
OperatorsName(copy.OperatorsName),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
ReferencedPerformedProcedureStepSequence(copy.ReferencedPerformedProcedureStepSequence),
RequestAttributesSequence(copy.RequestAttributesSequence),
PerformedProcedureStepID(copy.PerformedProcedureStepID),
DeviceSerialNumber(copy.DeviceSerialNumber),
SoftwareVersions(copy.SoftwareVersions),
GantryID(copy.GantryID),
+ UDISequence(copy.UDISequence),
SpatialResolution(copy.SpatialResolution),
DateOfLastCalibration(copy.DateOfLastCalibration),
TimeOfLastCalibration(copy.TimeOfLastCalibration),
FractionGroupSummarySequence(copy.FractionGroupSummarySequence),
TreatmentSummaryMeasuredDoseReferenceSequence(copy.TreatmentSummaryMeasuredDoseReferenceSequence),
TreatmentSummaryCalculatedDoseReferenceSequence(copy.TreatmentSummaryCalculatedDoseReferenceSequence),
+ ReferencedImageSequence(copy.ReferencedImageSequence),
+ ReferencedInstanceSequence(copy.ReferencedInstanceSequence),
+ DerivationDescription(copy.DerivationDescription),
+ DerivationCodeSequence(copy.DerivationCodeSequence),
+ SourceImageSequence(copy.SourceImageSequence),
+ SourceInstanceSequence(copy.SourceInstanceSequence),
SOPClassUID(copy.SOPClassUID),
SOPInstanceUID(copy.SOPInstanceUID),
SpecificCharacterSet(copy.SpecificCharacterSet),
RelatedGeneralSOPClassUID(copy.RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(copy.OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(copy.CodingSchemeIdentificationSequence),
+ ContextGroupIdentificationSequence(copy.ContextGroupIdentificationSequence),
+ MappingResourceIdentificationSequence(copy.MappingResourceIdentificationSequence),
TimezoneOffsetFromUTC(copy.TimezoneOffsetFromUTC),
ContributingEquipmentSequence(copy.ContributingEquipmentSequence),
SOPInstanceStatus(copy.SOPInstanceStatus),
IssuerOfPatientID = copy.IssuerOfPatientID;
IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
PatientBirthDate = copy.PatientBirthDate;
+ PatientBirthDateInAlternativeCalendar = copy.PatientBirthDateInAlternativeCalendar;
+ PatientDeathDateInAlternativeCalendar = copy.PatientDeathDateInAlternativeCalendar;
+ PatientAlternativeCalendar = copy.PatientAlternativeCalendar;
PatientSex = copy.PatientSex;
ReferencedPatientPhotoSequence = copy.ReferencedPatientPhotoSequence;
QualityControlSubject = copy.QualityControlSubject;
PatientBreedDescription = copy.PatientBreedDescription;
PatientBreedCodeSequence = copy.PatientBreedCodeSequence;
BreedRegistrationSequence = copy.BreedRegistrationSequence;
+ StrainDescription = copy.StrainDescription;
+ StrainNomenclature = copy.StrainNomenclature;
+ StrainCodeSequence = copy.StrainCodeSequence;
+ StrainAdditionalInformation = copy.StrainAdditionalInformation;
+ StrainStockSequence = copy.StrainStockSequence;
ResponsiblePerson = copy.ResponsiblePerson;
ResponsiblePersonRole = copy.ResponsiblePersonRole;
ResponsibleOrganization = copy.ResponsibleOrganization;
PatientIdentityRemoved = copy.PatientIdentityRemoved;
DeidentificationMethod = copy.DeidentificationMethod;
DeidentificationMethodCodeSequence = copy.DeidentificationMethodCodeSequence;
+ SourcePatientGroupIdentificationSequence = copy.SourcePatientGroupIdentificationSequence;
+ GroupOfPatientsIdentificationSequence = copy.GroupOfPatientsIdentificationSequence;
ClinicalTrialSponsorName = copy.ClinicalTrialSponsorName;
ClinicalTrialProtocolID = copy.ClinicalTrialProtocolID;
ClinicalTrialProtocolName = copy.ClinicalTrialProtocolName;
PatientAge = copy.PatientAge;
PatientSize = copy.PatientSize;
PatientWeight = copy.PatientWeight;
+ PatientBodyMassIndex = copy.PatientBodyMassIndex;
+ MeasuredAPDimension = copy.MeasuredAPDimension;
+ MeasuredLateralDimension = copy.MeasuredLateralDimension;
PatientSizeCodeSequence = copy.PatientSizeCodeSequence;
+ MedicalAlerts = copy.MedicalAlerts;
+ Allergies = copy.Allergies;
+ SmokingStatus = copy.SmokingStatus;
+ PregnancyStatus = copy.PregnancyStatus;
+ LastMenstrualDate = copy.LastMenstrualDate;
+ PatientState = copy.PatientState;
Occupation = copy.Occupation;
AdditionalPatientHistory = copy.AdditionalPatientHistory;
AdmissionID = copy.AdmissionID;
SeriesDescription = copy.SeriesDescription;
SeriesDescriptionCodeSequence = copy.SeriesDescriptionCodeSequence;
OperatorsName = copy.OperatorsName;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
ReferencedPerformedProcedureStepSequence = copy.ReferencedPerformedProcedureStepSequence;
RequestAttributesSequence = copy.RequestAttributesSequence;
PerformedProcedureStepID = copy.PerformedProcedureStepID;
DeviceSerialNumber = copy.DeviceSerialNumber;
SoftwareVersions = copy.SoftwareVersions;
GantryID = copy.GantryID;
+ UDISequence = copy.UDISequence;
SpatialResolution = copy.SpatialResolution;
DateOfLastCalibration = copy.DateOfLastCalibration;
TimeOfLastCalibration = copy.TimeOfLastCalibration;
FractionGroupSummarySequence = copy.FractionGroupSummarySequence;
TreatmentSummaryMeasuredDoseReferenceSequence = copy.TreatmentSummaryMeasuredDoseReferenceSequence;
TreatmentSummaryCalculatedDoseReferenceSequence = copy.TreatmentSummaryCalculatedDoseReferenceSequence;
+ ReferencedImageSequence = copy.ReferencedImageSequence;
+ ReferencedInstanceSequence = copy.ReferencedInstanceSequence;
+ DerivationDescription = copy.DerivationDescription;
+ DerivationCodeSequence = copy.DerivationCodeSequence;
+ SourceImageSequence = copy.SourceImageSequence;
+ SourceInstanceSequence = copy.SourceInstanceSequence;
SOPClassUID = copy.SOPClassUID;
SOPInstanceUID = copy.SOPInstanceUID;
SpecificCharacterSet = copy.SpecificCharacterSet;
RelatedGeneralSOPClassUID = copy.RelatedGeneralSOPClassUID;
OriginalSpecializedSOPClassUID = copy.OriginalSpecializedSOPClassUID;
CodingSchemeIdentificationSequence = copy.CodingSchemeIdentificationSequence;
+ ContextGroupIdentificationSequence = copy.ContextGroupIdentificationSequence;
+ MappingResourceIdentificationSequence = copy.MappingResourceIdentificationSequence;
TimezoneOffsetFromUTC = copy.TimezoneOffsetFromUTC;
ContributingEquipmentSequence = copy.ContributingEquipmentSequence;
SOPInstanceStatus = copy.SOPInstanceStatus;
IssuerOfPatientID.clear();
IssuerOfPatientIDQualifiersSequence.clear();
PatientBirthDate.clear();
+ PatientBirthDateInAlternativeCalendar.clear();
+ PatientDeathDateInAlternativeCalendar.clear();
+ PatientAlternativeCalendar.clear();
PatientSex.clear();
ReferencedPatientPhotoSequence.clear();
QualityControlSubject.clear();
PatientBreedDescription.clear();
PatientBreedCodeSequence.clear();
BreedRegistrationSequence.clear();
+ StrainDescription.clear();
+ StrainNomenclature.clear();
+ StrainCodeSequence.clear();
+ StrainAdditionalInformation.clear();
+ StrainStockSequence.clear();
ResponsiblePerson.clear();
ResponsiblePersonRole.clear();
ResponsibleOrganization.clear();
PatientIdentityRemoved.clear();
DeidentificationMethod.clear();
DeidentificationMethodCodeSequence.clear();
+ SourcePatientGroupIdentificationSequence.clear();
+ GroupOfPatientsIdentificationSequence.clear();
ClinicalTrialSponsorName.clear();
ClinicalTrialProtocolID.clear();
ClinicalTrialProtocolName.clear();
PatientAge.clear();
PatientSize.clear();
PatientWeight.clear();
+ PatientBodyMassIndex.clear();
+ MeasuredAPDimension.clear();
+ MeasuredLateralDimension.clear();
PatientSizeCodeSequence.clear();
+ MedicalAlerts.clear();
+ Allergies.clear();
+ SmokingStatus.clear();
+ PregnancyStatus.clear();
+ LastMenstrualDate.clear();
+ PatientState.clear();
Occupation.clear();
AdditionalPatientHistory.clear();
AdmissionID.clear();
SeriesDescription.clear();
SeriesDescriptionCodeSequence.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
ReferencedPerformedProcedureStepSequence.clear();
RequestAttributesSequence.clear();
PerformedProcedureStepID.clear();
DeviceSerialNumber.clear();
SoftwareVersions.clear();
GantryID.clear();
+ UDISequence.clear();
SpatialResolution.clear();
DateOfLastCalibration.clear();
TimeOfLastCalibration.clear();
FractionGroupSummarySequence.clear();
TreatmentSummaryMeasuredDoseReferenceSequence.clear();
TreatmentSummaryCalculatedDoseReferenceSequence.clear();
+ ReferencedImageSequence.clear();
+ ReferencedInstanceSequence.clear();
+ DerivationDescription.clear();
+ DerivationCodeSequence.clear();
+ SourceImageSequence.clear();
+ SourceInstanceSequence.clear();
SOPClassUID.clear();
SOPInstanceUID.clear();
SpecificCharacterSet.clear();
RelatedGeneralSOPClassUID.clear();
OriginalSpecializedSOPClassUID.clear();
CodingSchemeIdentificationSequence.clear();
+ ContextGroupIdentificationSequence.clear();
+ MappingResourceIdentificationSequence.clear();
TimezoneOffsetFromUTC.clear();
ContributingEquipmentSequence.clear();
SOPInstanceStatus.clear();
getAndCheckElementFromDataset(dataset, DeviceSerialNumber, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SoftwareVersions, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, GantryID, "1", "3", "GeneralEquipmentModule");
+ UDISequence.read(dataset, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SpatialResolution, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, DateOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, TimeOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
TreatmentSummaryCalculatedDoseReferenceSequence.read(dataset, "1-n", "3", "RTTreatmentSummaryRecordModule");
}
+ // --- GeneralReferenceModule (U) ---
+ ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralReferenceModule");
+ DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+
// --- SOPCommonModule (M) ---
getAndCheckElementFromDataset(dataset, SOPClassUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, SOPInstanceUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, RelatedGeneralSOPClassUID, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, OriginalSpecializedSOPClassUID, "1", "3", "SOPCommonModule");
CodingSchemeIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ ContextGroupIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ MappingResourceIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, TimezoneOffsetFromUTC, "1", "3", "SOPCommonModule");
ContributingEquipmentSequence.read(dataset, "1-n", "3", "SOPCommonModule");
// getAndCheckElementFromDataset(dataset, InstanceNumber, "1", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, IssuerOfPatientID, "1", "3", "PatientModule");
IssuerOfPatientIDQualifiersSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBirthDate, "1", "2", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientBirthDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientDeathDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientAlternativeCalendar, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientSex, "1", "2", "PatientModule");
ReferencedPatientPhotoSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, QualityControlSubject, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBreedDescription, "1", "2C", "PatientModule");
PatientBreedCodeSequence.read(dataset, "1-n", "2C", "PatientModule");
BreedRegistrationSequence.read(dataset, "1-n", "2C", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainDescription, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainNomenclature, "1", "3", "PatientModule");
+ StrainCodeSequence.read(dataset, "1-n", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainAdditionalInformation, "1", "3", "PatientModule");
+ StrainStockSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePerson, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePersonRole, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsibleOrganization, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientIdentityRemoved, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, DeidentificationMethod, "1-n", "1C", "PatientModule");
DeidentificationMethodCodeSequence.read(dataset, "1-n", "1C", "PatientModule");
+ SourcePatientGroupIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
+ GroupOfPatientsIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (dataset.tagExists(DCM_ClinicalTrialSponsorName) ||
getAndCheckElementFromDataset(dataset, PatientAge, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientSize, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientWeight, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientBodyMassIndex, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredAPDimension, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredLateralDimension, "1", "3", "PatientStudyModule");
PatientSizeCodeSequence.read(dataset, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MedicalAlerts, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, Allergies, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, SmokingStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PregnancyStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, LastMenstrualDate, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientState, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, Occupation, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdditionalPatientHistory, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdmissionID, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, SeriesDescription, "1", "3", "RTSeriesModule");
SeriesDescriptionCodeSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, OperatorsName, "1-n", "2", "RTSeriesModule");
+ OperatorIdentificationSequence.read(dataset, "1-n", "3", "RTSeriesModule");
ReferencedPerformedProcedureStepSequence.read(dataset, "1-n", "3", "RTSeriesModule");
RequestAttributesSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, PerformedProcedureStepID, "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(IssuerOfPatientID), "1", "3", "PatientModule");
if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmDate(PatientBirthDate), "1", "2", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientBirthDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientDeathDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmCodeString(PatientAlternativeCalendar), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientSex), "1", "2", "PatientModule");
if (result.good()) result = ReferencedPatientPhotoSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlSubject), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(PatientBreedDescription), "1", "2C", "PatientModule");
if (result.good()) result = PatientBreedCodeSequence.write(dataset, "1-n" ,"2C", "PatientModule");
if (result.good()) result = BreedRegistrationSequence.write(dataset, "1-n" ,"2C", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedCharacters(StrainDescription), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(StrainNomenclature), "1", "3", "PatientModule");
+ if (result.good()) result = StrainCodeSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedText(StrainAdditionalInformation), "1", "3", "PatientModule");
+ if (result.good()) result = StrainStockSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmPersonName(ResponsiblePerson), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(ResponsiblePersonRole), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(ResponsibleOrganization), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientIdentityRemoved), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(DeidentificationMethod), "1-n", "1C", "PatientModule");
if (result.good()) result = DeidentificationMethodCodeSequence.write(dataset, "1-n" ,"1C", "PatientModule");
+ if (result.good()) result = SourcePatientGroupIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ if (result.good()) result = GroupOfPatientsIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (isClinicalTrialSubjectModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmAgeString(PatientAge), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientSize), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientWeight), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(PatientBodyMassIndex), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredAPDimension), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredLateralDimension), "1", "3", "PatientStudyModule");
if (result.good()) result = PatientSizeCodeSequence.write(dataset, "1-n" ,"3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(MedicalAlerts), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(Allergies), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmCodeString(SmokingStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmUnsignedShort(PregnancyStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDate(LastMenstrualDate), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientState), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmShortString(Occupation), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongText(AdditionalPatientHistory), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(AdmissionID), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(SeriesDescription), "1", "3", "RTSeriesModule");
if (result.good()) result = SeriesDescriptionCodeSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmPersonName(OperatorsName), "1-n", "2", "RTSeriesModule");
+ if (result.good()) result = OperatorIdentificationSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = ReferencedPerformedProcedureStepSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = RequestAttributesSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmShortString(PerformedProcedureStepID), "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(DeviceSerialNumber), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(SoftwareVersions), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(GantryID), "1", "3", "GeneralEquipmentModule");
+ if (result.good()) result = UDISequence.write(dataset, "1-n" ,"3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDecimalString(SpatialResolution), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(DateOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmTime(TimeOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
if (result.good()) result = TreatmentSummaryCalculatedDoseReferenceSequence.write(dataset, "1-n" ,"3", "RTTreatmentSummaryRecordModule");
}
+ // --- GeneralReferenceModule (U) ---
+ if (isGeneralReferenceModulePresent(OFFalse /*complete*/))
+ {
+ if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralReferenceModule");
+ if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ }
+
// --- SOPCommonModule (M) ---
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPClassUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPInstanceUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(RelatedGeneralSOPClassUID), "1-n", "3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(OriginalSpecializedSOPClassUID), "1", "3", "SOPCommonModule");
if (result.good()) result = CodingSchemeIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = ContextGroupIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = MappingResourceIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmShortString(TimezoneOffsetFromUTC), "1", "3", "SOPCommonModule");
if (result.good()) result = ContributingEquipmentSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
// addElementToDataset(result, dataset, new DcmIntegerString(InstanceNumber), "1", "3", "SOPCommonModule");
!PatientAge.isEmpty() ||
!PatientSize.isEmpty() ||
!PatientWeight.isEmpty() ||
+ !PatientBodyMassIndex.isEmpty() ||
+ !MeasuredAPDimension.isEmpty() ||
+ !MeasuredLateralDimension.isEmpty() ||
!PatientSizeCodeSequence.isEmpty() ||
+ !MedicalAlerts.isEmpty() ||
+ !Allergies.isEmpty() ||
+ !SmokingStatus.isEmpty() ||
+ !PregnancyStatus.isEmpty() ||
+ !LastMenstrualDate.isEmpty() ||
+ !PatientState.isEmpty() ||
!Occupation.isEmpty() ||
!AdditionalPatientHistory.isEmpty() ||
!AdmissionID.isEmpty() ||
}
+OFBool DRTIonBeamsTreatmentRecordIOD::isGeneralReferenceModulePresent(const OFBool /*complete*/)
+{
+ /* check whether at least one attribute is present */
+ return !ReferencedImageSequence.isEmpty() ||
+ !ReferencedInstanceSequence.isEmpty() ||
+ !DerivationDescription.isEmpty() ||
+ !DerivationCodeSequence.isEmpty() ||
+ !SourceImageSequence.isEmpty() ||
+ !SourceInstanceSequence.isEmpty();
+}
+
+
OFBool DRTIonBeamsTreatmentRecordIOD::isCommonInstanceReferenceModulePresent(const OFBool /*complete*/)
{
/* check whether at least one attribute is present */
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getAllergies(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(Allergies, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getAuthorizationEquipmentCertificationNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(AuthorizationEquipmentCertificationNumber, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getDerivationDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(DerivationDescription, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getDeviceSerialNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(DeviceSerialNumber, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getLastMenstrualDate(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(LastMenstrualDate, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getLongitudinalTemporalInformationModified(OFString &value, const signed long pos) const
{
return getStringValueFromElement(LongitudinalTemporalInformationModified, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getMeasuredAPDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredAPDimension, value, pos);
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::getMeasuredAPDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredAPDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::getMeasuredLateralDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredLateralDimension, value, pos);
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::getMeasuredLateralDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredLateralDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::getMedicalAlerts(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MedicalAlerts, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getModality(OFString &value, const signed long pos) const
{
return getStringValueFromElement(Modality, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientBirthDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthDate, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBirthDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientBirthTime(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthTime, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientBodyMassIndex(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBodyMassIndex, value, pos);
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientBodyMassIndex(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, PatientBodyMassIndex).getFloat64(value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientBreedDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBreedDescription, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientDeathDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientID, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientState(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientState, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getPatientWeight(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientWeight, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getPregnancyStatus(Uint16 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmUnsignedShort &, PregnancyStatus).getUint16(value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getPrimaryDosimeterUnit(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PrimaryDosimeterUnit, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getSmokingStatus(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(SmokingStatus, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getSoftwareVersions(OFString &value, const signed long pos) const
{
return getStringValueFromElement(SoftwareVersions, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::getStrainAdditionalInformation(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainAdditionalInformation, value, pos);
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::getStrainDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainDescription, value, pos);
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::getStrainNomenclature(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainNomenclature, value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::getStudyDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(StudyDate, value, pos);
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setAllergies(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = Allergies.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setAuthorizationEquipmentCertificationNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setDerivationDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = DerivationDescription.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setDeviceSerialNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setLastMenstrualDate(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LastMenstrualDate.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setLongitudinalTemporalInformationModified(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setMeasuredAPDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredAPDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::setMeasuredLateralDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredLateralDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::setMedicalAlerts(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = MedicalAlerts.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setModality(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientBirthDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBirthDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientBirthTime(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientBodyMassIndex(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBodyMassIndex.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientBreedDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientDeathDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientState(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientState.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setPatientWeight(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setPregnancyStatus(const Uint16 value, const unsigned long pos)
+{
+ return PregnancyStatus.putUint16(value, pos);
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setPrimaryDosimeterUnit(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setSmokingStatus(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = SmokingStatus.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setSoftwareVersions(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
}
+OFCondition DRTIonBeamsTreatmentRecordIOD::setStrainAdditionalInformation(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = StrainAdditionalInformation.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::setStrainDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainDescription.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTIonBeamsTreatmentRecordIOD::setStrainNomenclature(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainNomenclature.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTIonBeamsTreatmentRecordIOD::setStudyDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIssuerOfPatientIDQualifiersSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonRangeCompensatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIssuerOfServiceEpisodeIDSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonToleranceTableSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
: EmptyDefaultItem(emptyDefaultItem),
BeamLimitingDeviceAngleTolerance(DCM_BeamLimitingDeviceAngleTolerance),
BeamLimitingDeviceToleranceSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ ChairHeadFramePositionTolerance(DCM_ChairHeadFramePositionTolerance),
+ FixationLightAzimuthalAngleTolerance(DCM_FixationLightAzimuthalAngleTolerance),
+ FixationLightPolarAngleTolerance(DCM_FixationLightPolarAngleTolerance),
GantryAngleTolerance(DCM_GantryAngleTolerance),
+ HeadFixationAngleTolerance(DCM_HeadFixationAngleTolerance),
PatientSupportAngleTolerance(DCM_PatientSupportAngleTolerance),
SnoutPositionTolerance(DCM_SnoutPositionTolerance),
TableTopLateralPositionTolerance(DCM_TableTopLateralPositionTolerance),
: EmptyDefaultItem(copy.EmptyDefaultItem),
BeamLimitingDeviceAngleTolerance(copy.BeamLimitingDeviceAngleTolerance),
BeamLimitingDeviceToleranceSequence(copy.BeamLimitingDeviceToleranceSequence),
+ ChairHeadFramePositionTolerance(copy.ChairHeadFramePositionTolerance),
+ FixationLightAzimuthalAngleTolerance(copy.FixationLightAzimuthalAngleTolerance),
+ FixationLightPolarAngleTolerance(copy.FixationLightPolarAngleTolerance),
GantryAngleTolerance(copy.GantryAngleTolerance),
+ HeadFixationAngleTolerance(copy.HeadFixationAngleTolerance),
PatientSupportAngleTolerance(copy.PatientSupportAngleTolerance),
SnoutPositionTolerance(copy.SnoutPositionTolerance),
TableTopLateralPositionTolerance(copy.TableTopLateralPositionTolerance),
EmptyDefaultItem = copy.EmptyDefaultItem;
BeamLimitingDeviceAngleTolerance = copy.BeamLimitingDeviceAngleTolerance;
BeamLimitingDeviceToleranceSequence = copy.BeamLimitingDeviceToleranceSequence;
+ ChairHeadFramePositionTolerance = copy.ChairHeadFramePositionTolerance;
+ FixationLightAzimuthalAngleTolerance = copy.FixationLightAzimuthalAngleTolerance;
+ FixationLightPolarAngleTolerance = copy.FixationLightPolarAngleTolerance;
GantryAngleTolerance = copy.GantryAngleTolerance;
+ HeadFixationAngleTolerance = copy.HeadFixationAngleTolerance;
PatientSupportAngleTolerance = copy.PatientSupportAngleTolerance;
SnoutPositionTolerance = copy.SnoutPositionTolerance;
TableTopLateralPositionTolerance = copy.TableTopLateralPositionTolerance;
TableTopPitchAngleTolerance.clear();
TableTopRollAngleTolerance.clear();
SnoutPositionTolerance.clear();
+ HeadFixationAngleTolerance.clear();
+ ChairHeadFramePositionTolerance.clear();
+ FixationLightAzimuthalAngleTolerance.clear();
+ FixationLightPolarAngleTolerance.clear();
}
}
TableTopLateralPositionTolerance.isEmpty() &&
TableTopPitchAngleTolerance.isEmpty() &&
TableTopRollAngleTolerance.isEmpty() &&
- SnoutPositionTolerance.isEmpty();
+ SnoutPositionTolerance.isEmpty() &&
+ HeadFixationAngleTolerance.isEmpty() &&
+ ChairHeadFramePositionTolerance.isEmpty() &&
+ FixationLightAzimuthalAngleTolerance.isEmpty() &&
+ FixationLightPolarAngleTolerance.isEmpty();
}
getAndCheckElementFromDataset(item, TableTopPitchAngleTolerance, "1", "3", "IonToleranceTableSequence");
getAndCheckElementFromDataset(item, TableTopRollAngleTolerance, "1", "3", "IonToleranceTableSequence");
getAndCheckElementFromDataset(item, SnoutPositionTolerance, "1", "3", "IonToleranceTableSequence");
+ getAndCheckElementFromDataset(item, HeadFixationAngleTolerance, "1", "3", "IonToleranceTableSequence");
+ getAndCheckElementFromDataset(item, ChairHeadFramePositionTolerance, "1", "3", "IonToleranceTableSequence");
+ getAndCheckElementFromDataset(item, FixationLightAzimuthalAngleTolerance, "1", "3", "IonToleranceTableSequence");
+ getAndCheckElementFromDataset(item, FixationLightPolarAngleTolerance, "1", "3", "IonToleranceTableSequence");
result = EC_Normal;
}
return result;
addElementToDataset(result, item, new DcmFloatingPointSingle(TableTopPitchAngleTolerance), "1", "3", "IonToleranceTableSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(TableTopRollAngleTolerance), "1", "3", "IonToleranceTableSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(SnoutPositionTolerance), "1", "3", "IonToleranceTableSequence");
+ addElementToDataset(result, item, new DcmDecimalString(HeadFixationAngleTolerance), "1", "3", "IonToleranceTableSequence");
+ addElementToDataset(result, item, new DcmDecimalString(ChairHeadFramePositionTolerance), "1", "3", "IonToleranceTableSequence");
+ addElementToDataset(result, item, new DcmDecimalString(FixationLightAzimuthalAngleTolerance), "1", "3", "IonToleranceTableSequence");
+ addElementToDataset(result, item, new DcmDecimalString(FixationLightPolarAngleTolerance), "1", "3", "IonToleranceTableSequence");
}
return result;
}
}
+OFCondition DRTIonToleranceTableSequence::Item::getChairHeadFramePositionTolerance(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ChairHeadFramePositionTolerance, value, pos);
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::getChairHeadFramePositionTolerance(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, ChairHeadFramePositionTolerance).getFloat64(value, pos);
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::getFixationLightAzimuthalAngleTolerance(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(FixationLightAzimuthalAngleTolerance, value, pos);
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::getFixationLightAzimuthalAngleTolerance(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, FixationLightAzimuthalAngleTolerance).getFloat64(value, pos);
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::getFixationLightPolarAngleTolerance(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(FixationLightPolarAngleTolerance, value, pos);
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::getFixationLightPolarAngleTolerance(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, FixationLightPolarAngleTolerance).getFloat64(value, pos);
+}
+
+
OFCondition DRTIonToleranceTableSequence::Item::getGantryAngleTolerance(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonToleranceTableSequence::Item::getHeadFixationAngleTolerance(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(HeadFixationAngleTolerance, value, pos);
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::getHeadFixationAngleTolerance(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, HeadFixationAngleTolerance).getFloat64(value, pos);
+}
+
+
OFCondition DRTIonToleranceTableSequence::Item::getPatientSupportAngleTolerance(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTIonToleranceTableSequence::Item::setChairHeadFramePositionTolerance(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ChairHeadFramePositionTolerance.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::setFixationLightAzimuthalAngleTolerance(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = FixationLightAzimuthalAngleTolerance.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTIonToleranceTableSequence::Item::setFixationLightPolarAngleTolerance(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = FixationLightPolarAngleTolerance.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonToleranceTableSequence::Item::setGantryAngleTolerance(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
}
+OFCondition DRTIonToleranceTableSequence::Item::setHeadFixationAngleTolerance(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = HeadFixationAngleTolerance.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTIonToleranceTableSequence::Item::setPatientSupportAngleTolerance(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonWedgePositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTIonWedgeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTLateralSpreadingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTMultiplexedAudioChannelsDescriptionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
*
* Source file for class DRTModifiedAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
- * Last modified on 2016-02-05 by Riesmeier
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
}
-OFCondition DRTModifiedAttributesSequence::Item::read(DcmItem & /*item*/)
+OFCondition DRTModifiedAttributesSequence::Item::read(DcmItem &item)
{
OFCondition result = EC_IllegalCall;
if (!EmptyDefaultItem)
{
/* re-initialize object */
clear();
- /* manual comment: nothing to do */
result = EC_Normal;
}
return result;
}
-OFCondition DRTModifiedAttributesSequence::Item::write(DcmItem & /*item*/)
+OFCondition DRTModifiedAttributesSequence::Item::write(DcmItem &item)
{
OFCondition result = EC_IllegalCall;
if (!EmptyDefaultItem)
{
- /* manual comment: nothing to do */
result = EC_Normal;
}
return result;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTMeasuredDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTModalityLUTSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
{
/* re-initialize object */
clear();
- getAndCheckElementFromDataset(item, LUTDescriptor, "3", "1C", "ModalityLUTSequence");
+ getAndCheckElementFromDataset(item, LUTDescriptor, "3", "1", "ModalityLUTSequence");
getAndCheckElementFromDataset(item, LUTExplanation, "1", "3", "ModalityLUTSequence");
- getAndCheckElementFromDataset(item, ModalityLUTType, "1", "1C", "ModalityLUTSequence");
- getAndCheckElementFromDataset(item, LUTData, "1-n", "1C", "ModalityLUTSequence");
+ getAndCheckElementFromDataset(item, ModalityLUTType, "1", "1", "ModalityLUTSequence");
+ getAndCheckElementFromDataset(item, LUTData, "1-n", "1", "ModalityLUTSequence");
result = EC_Normal;
}
return result;
if (!EmptyDefaultItem)
{
result = EC_Normal;
- addElementToDataset(result, item, new DcmUnsignedShort(LUTDescriptor), "3", "1C", "ModalityLUTSequence");
+ addElementToDataset(result, item, new DcmUnsignedShort(LUTDescriptor), "3", "1", "ModalityLUTSequence");
addElementToDataset(result, item, new DcmLongString(LUTExplanation), "1", "3", "ModalityLUTSequence");
- addElementToDataset(result, item, new DcmLongString(ModalityLUTType), "1", "1C", "ModalityLUTSequence");
- addElementToDataset(result, item, new DcmOtherByteOtherWord(LUTData), "1-n", "1C", "ModalityLUTSequence");
+ addElementToDataset(result, item, new DcmLongString(ModalityLUTType), "1", "1", "ModalityLUTSequence");
+ addElementToDataset(result, item, new DcmOtherByteOtherWord(LUTData), "1-n", "1", "ModalityLUTSequence");
}
return result;
}
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTMACParametersSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTMappingResourceIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtmris.h"
+
+
+// --- item class ---
+
+DRTMappingResourceIdentificationSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
+ MappingResourceUID(DCM_MappingResourceUID)
+{
+}
+
+
+DRTMappingResourceIdentificationSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
+ MappingResourceUID(copy.MappingResourceUID)
+{
+}
+
+
+DRTMappingResourceIdentificationSequence::Item::~Item()
+{
+}
+
+
+DRTMappingResourceIdentificationSequence::Item &DRTMappingResourceIdentificationSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
+ MappingResourceUID = copy.MappingResourceUID;
+ }
+ return *this;
+}
+
+
+void DRTMappingResourceIdentificationSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ MappingResource.clear();
+ MappingResourceUID.clear();
+ MappingResourceName.clear();
+ }
+}
+
+
+OFBool DRTMappingResourceIdentificationSequence::Item::isEmpty()
+{
+ return MappingResource.isEmpty() &&
+ MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty();
+}
+
+
+OFBool DRTMappingResourceIdentificationSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, MappingResource, "1", "1", "MappingResourceIdentificationSequence");
+ getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "MappingResourceIdentificationSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "MappingResourceIdentificationSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1", "MappingResourceIdentificationSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "MappingResourceIdentificationSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "MappingResourceIdentificationSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::getMappingResource(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResource, value, pos);
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceUID, value, pos);
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::setMappingResource(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResource.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTMappingResourceIdentificationSequence::DRTMappingResourceIdentificationSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTMappingResourceIdentificationSequence::DRTMappingResourceIdentificationSequence(const DRTMappingResourceIdentificationSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTMappingResourceIdentificationSequence &DRTMappingResourceIdentificationSequence::operator=(const DRTMappingResourceIdentificationSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTMappingResourceIdentificationSequence::~DRTMappingResourceIdentificationSequence()
+{
+ clear();
+}
+
+
+void DRTMappingResourceIdentificationSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTMappingResourceIdentificationSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTMappingResourceIdentificationSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTMappingResourceIdentificationSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTMappingResourceIdentificationSequence::Item &DRTMappingResourceIdentificationSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTMappingResourceIdentificationSequence::Item &DRTMappingResourceIdentificationSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTMappingResourceIdentificationSequence::Item &DRTMappingResourceIdentificationSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTMappingResourceIdentificationSequence::Item &DRTMappingResourceIdentificationSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTMappingResourceIdentificationSequence::Item &DRTMappingResourceIdentificationSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTMappingResourceIdentificationSequence::Item &DRTMappingResourceIdentificationSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_MappingResourceIdentificationSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_MappingResourceIdentificationSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTMappingResourceIdentificationSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_MappingResourceIdentificationSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTMotionSynchronizationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTMeasurementUnitsCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "MeasurementUnitsCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "MeasurementUnitsCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "MeasurementUnitsCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "MeasurementUnitsCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "MeasurementUnitsCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "MeasurementUnitsCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "MeasurementUnitsCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "MeasurementUnitsCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "MeasurementUnitsCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "MeasurementUnitsCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "MeasurementUnitsCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "MeasurementUnitsCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "MeasurementUnitsCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "MeasurementUnitsCodeSequence");
}
+OFCondition DRTMeasurementUnitsCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTMeasurementUnitsCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTMeasurementUnitsCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTMeasurementUnitsCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTOriginalAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTOperatorIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTOtherPatientIDsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTOverrideSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
DRTOverrideSequence::Item::Item(const OFBool emptyDefaultItem)
: EmptyDefaultItem(emptyDefaultItem),
+ OperatorIdentificationSequence(emptyDefaultItem /*emptyDefaultSequence*/),
OperatorsName(DCM_OperatorsName),
OverrideParameterPointer(DCM_OverrideParameterPointer),
OverrideReason(DCM_OverrideReason),
DRTOverrideSequence::Item::Item(const Item ©)
: EmptyDefaultItem(copy.EmptyDefaultItem),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
OperatorsName(copy.OperatorsName),
OverrideParameterPointer(copy.OverrideParameterPointer),
OverrideReason(copy.OverrideReason),
if (this != ©)
{
EmptyDefaultItem = copy.EmptyDefaultItem;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
OperatorsName = copy.OperatorsName;
OverrideParameterPointer = copy.OverrideParameterPointer;
OverrideReason = copy.OverrideReason;
OverrideParameterPointer.clear();
ParameterItemIndex.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
OverrideReason.clear();
}
}
OverrideParameterPointer.isEmpty() &&
ParameterItemIndex.isEmpty() &&
OperatorsName.isEmpty() &&
+ OperatorIdentificationSequence.isEmpty() &&
OverrideReason.isEmpty();
}
getAndCheckElementFromDataset(item, OverrideParameterPointer, "1", "1", "OverrideSequence");
getAndCheckElementFromDataset(item, ParameterItemIndex, "1", "1", "OverrideSequence");
getAndCheckElementFromDataset(item, OperatorsName, "1-n", "2", "OverrideSequence");
+ OperatorIdentificationSequence.read(item, "1-n", "3", "OverrideSequence");
getAndCheckElementFromDataset(item, OverrideReason, "1", "3", "OverrideSequence");
result = EC_Normal;
}
addElementToDataset(result, item, new DcmAttributeTag(OverrideParameterPointer), "1", "1", "OverrideSequence");
addElementToDataset(result, item, new DcmIntegerString(ParameterItemIndex), "1", "1", "OverrideSequence");
addElementToDataset(result, item, new DcmPersonName(OperatorsName), "1-n", "2", "OverrideSequence");
+ if (result.good()) result = OperatorIdentificationSequence.write(item, "1-n", "3", "OverrideSequence");
addElementToDataset(result, item, new DcmShortText(OverrideReason), "1", "3", "OverrideSequence");
}
return result;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPatientBreedCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "PatientBreedCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "PatientBreedCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "PatientBreedCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "PatientBreedCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "PatientBreedCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "PatientBreedCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "PatientBreedCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "PatientBreedCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "PatientBreedCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "PatientBreedCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "PatientBreedCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "PatientBreedCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "PatientBreedCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "PatientBreedCodeSequence");
}
+OFCondition DRTPatientBreedCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTPatientBreedCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTPatientBreedCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTPatientBreedCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ProcedureCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ProcedureCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ProcedureCodeSequence");
}
+OFCondition DRTProcedureCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTProcedureCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTProcedureCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTProcedureCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTProtocolContextSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPrivateDataElementCharacteristicsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
DeidentificationActionSequence(emptyDefaultItem /*emptyDefaultSequence*/),
NonidentifyingPrivateElements(DCM_NonidentifyingPrivateElements),
PrivateCreatorReference(DCM_PrivateCreatorReference),
+ PrivateDataElementDefinitionSequence(emptyDefaultItem /*emptyDefaultSequence*/),
PrivateGroupReference(DCM_PrivateGroupReference)
{
}
DeidentificationActionSequence(copy.DeidentificationActionSequence),
NonidentifyingPrivateElements(copy.NonidentifyingPrivateElements),
PrivateCreatorReference(copy.PrivateCreatorReference),
+ PrivateDataElementDefinitionSequence(copy.PrivateDataElementDefinitionSequence),
PrivateGroupReference(copy.PrivateGroupReference)
{
}
DeidentificationActionSequence = copy.DeidentificationActionSequence;
NonidentifyingPrivateElements = copy.NonidentifyingPrivateElements;
PrivateCreatorReference = copy.PrivateCreatorReference;
+ PrivateDataElementDefinitionSequence = copy.PrivateDataElementDefinitionSequence;
PrivateGroupReference = copy.PrivateGroupReference;
}
return *this;
/* clear all DICOM attributes */
PrivateGroupReference.clear();
PrivateCreatorReference.clear();
+ PrivateDataElementDefinitionSequence.clear();
BlockIdentifyingInformationStatus.clear();
NonidentifyingPrivateElements.clear();
DeidentificationActionSequence.clear();
{
return PrivateGroupReference.isEmpty() &&
PrivateCreatorReference.isEmpty() &&
+ PrivateDataElementDefinitionSequence.isEmpty() &&
BlockIdentifyingInformationStatus.isEmpty() &&
NonidentifyingPrivateElements.isEmpty() &&
DeidentificationActionSequence.isEmpty();
clear();
getAndCheckElementFromDataset(item, PrivateGroupReference, "1", "1", "PrivateDataElementCharacteristicsSequence");
getAndCheckElementFromDataset(item, PrivateCreatorReference, "1", "1", "PrivateDataElementCharacteristicsSequence");
+ PrivateDataElementDefinitionSequence.read(item, "1-n", "3", "PrivateDataElementCharacteristicsSequence");
getAndCheckElementFromDataset(item, BlockIdentifyingInformationStatus, "1", "1", "PrivateDataElementCharacteristicsSequence");
getAndCheckElementFromDataset(item, NonidentifyingPrivateElements, "1-n", "1C", "PrivateDataElementCharacteristicsSequence");
DeidentificationActionSequence.read(item, "1-n", "3", "PrivateDataElementCharacteristicsSequence");
result = EC_Normal;
addElementToDataset(result, item, new DcmUnsignedShort(PrivateGroupReference), "1", "1", "PrivateDataElementCharacteristicsSequence");
addElementToDataset(result, item, new DcmLongString(PrivateCreatorReference), "1", "1", "PrivateDataElementCharacteristicsSequence");
+ if (result.good()) result = PrivateDataElementDefinitionSequence.write(item, "1-n", "3", "PrivateDataElementCharacteristicsSequence");
addElementToDataset(result, item, new DcmCodeString(BlockIdentifyingInformationStatus), "1", "1", "PrivateDataElementCharacteristicsSequence");
addElementToDataset(result, item, new DcmUnsignedShort(NonidentifyingPrivateElements), "1-n", "1C", "PrivateDataElementCharacteristicsSequence");
if (result.good()) result = DeidentificationActionSequence.write(item, "1-n", "3", "PrivateDataElementCharacteristicsSequence");
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTPrivateDataElementDefinitionSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtpdeds.h"
+
+
+// --- item class ---
+
+DRTPrivateDataElementDefinitionSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ PrivateDataElement(DCM_PrivateDataElement),
+ PrivateDataElementDescription(DCM_PrivateDataElementDescription),
+ PrivateDataElementEncoding(DCM_PrivateDataElementEncoding),
+ PrivateDataElementKeyword(DCM_PrivateDataElementKeyword),
+ PrivateDataElementName(DCM_PrivateDataElementName),
+ PrivateDataElementNumberOfItems(DCM_PrivateDataElementNumberOfItems),
+ PrivateDataElementValueMultiplicity(DCM_PrivateDataElementValueMultiplicity),
+ PrivateDataElementValueRepresentation(DCM_PrivateDataElementValueRepresentation),
+ RetrieveURI(DCM_RetrieveURI)
+{
+}
+
+
+DRTPrivateDataElementDefinitionSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ PrivateDataElement(copy.PrivateDataElement),
+ PrivateDataElementDescription(copy.PrivateDataElementDescription),
+ PrivateDataElementEncoding(copy.PrivateDataElementEncoding),
+ PrivateDataElementKeyword(copy.PrivateDataElementKeyword),
+ PrivateDataElementName(copy.PrivateDataElementName),
+ PrivateDataElementNumberOfItems(copy.PrivateDataElementNumberOfItems),
+ PrivateDataElementValueMultiplicity(copy.PrivateDataElementValueMultiplicity),
+ PrivateDataElementValueRepresentation(copy.PrivateDataElementValueRepresentation),
+ RetrieveURI(copy.RetrieveURI)
+{
+}
+
+
+DRTPrivateDataElementDefinitionSequence::Item::~Item()
+{
+}
+
+
+DRTPrivateDataElementDefinitionSequence::Item &DRTPrivateDataElementDefinitionSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ PrivateDataElement = copy.PrivateDataElement;
+ PrivateDataElementDescription = copy.PrivateDataElementDescription;
+ PrivateDataElementEncoding = copy.PrivateDataElementEncoding;
+ PrivateDataElementKeyword = copy.PrivateDataElementKeyword;
+ PrivateDataElementName = copy.PrivateDataElementName;
+ PrivateDataElementNumberOfItems = copy.PrivateDataElementNumberOfItems;
+ PrivateDataElementValueMultiplicity = copy.PrivateDataElementValueMultiplicity;
+ PrivateDataElementValueRepresentation = copy.PrivateDataElementValueRepresentation;
+ RetrieveURI = copy.RetrieveURI;
+ }
+ return *this;
+}
+
+
+void DRTPrivateDataElementDefinitionSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ PrivateDataElement.clear();
+ PrivateDataElementValueMultiplicity.clear();
+ PrivateDataElementValueRepresentation.clear();
+ PrivateDataElementNumberOfItems.clear();
+ PrivateDataElementKeyword.clear();
+ PrivateDataElementName.clear();
+ PrivateDataElementDescription.clear();
+ PrivateDataElementEncoding.clear();
+ RetrieveURI.clear();
+ }
+}
+
+
+OFBool DRTPrivateDataElementDefinitionSequence::Item::isEmpty()
+{
+ return PrivateDataElement.isEmpty() &&
+ PrivateDataElementValueMultiplicity.isEmpty() &&
+ PrivateDataElementValueRepresentation.isEmpty() &&
+ PrivateDataElementNumberOfItems.isEmpty() &&
+ PrivateDataElementKeyword.isEmpty() &&
+ PrivateDataElementName.isEmpty() &&
+ PrivateDataElementDescription.isEmpty() &&
+ PrivateDataElementEncoding.isEmpty() &&
+ RetrieveURI.isEmpty();
+}
+
+
+OFBool DRTPrivateDataElementDefinitionSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, PrivateDataElement, "1", "1", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, PrivateDataElementValueMultiplicity, "1-3", "1", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, PrivateDataElementValueRepresentation, "1", "1", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, PrivateDataElementNumberOfItems, "1-2", "1C", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, PrivateDataElementKeyword, "1", "1", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, PrivateDataElementName, "1", "1", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, PrivateDataElementDescription, "1", "3", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, PrivateDataElementEncoding, "1", "3", "PrivateDataElementDefinitionSequence");
+ getAndCheckElementFromDataset(item, RetrieveURI, "1", "3", "PrivateDataElementDefinitionSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmUnsignedShort(PrivateDataElement), "1", "1", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmUnsignedLong(PrivateDataElementValueMultiplicity), "1-3", "1", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmCodeString(PrivateDataElementValueRepresentation), "1", "1", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmUnsignedLong(PrivateDataElementNumberOfItems), "1-2", "1C", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmUnlimitedCharacters(PrivateDataElementKeyword), "1", "1", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmUnlimitedCharacters(PrivateDataElementName), "1", "1", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmUnlimitedText(PrivateDataElementDescription), "1", "3", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmUnlimitedText(PrivateDataElementEncoding), "1", "3", "PrivateDataElementDefinitionSequence");
+ addElementToDataset(result, item, new DcmUniversalResourceIdentifierOrLocator(RetrieveURI), "1", "3", "PrivateDataElementDefinitionSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElement(Uint16 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmUnsignedShort &, PrivateDataElement).getUint16(value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElementDescription(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PrivateDataElementDescription, value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElementEncoding(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PrivateDataElementEncoding, value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElementKeyword(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PrivateDataElementKeyword, value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElementName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PrivateDataElementName, value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElementNumberOfItems(Uint32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmUnsignedLong &, PrivateDataElementNumberOfItems).getUint32(value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElementValueMultiplicity(Uint32 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmUnsignedLong &, PrivateDataElementValueMultiplicity).getUint32(value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getPrivateDataElementValueRepresentation(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PrivateDataElementValueRepresentation, value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::getRetrieveURI(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(RetrieveURI, value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElement(const Uint16 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return PrivateDataElement.putUint16(value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElementDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = PrivateDataElementDescription.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElementEncoding(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = PrivateDataElementEncoding.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElementKeyword(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PrivateDataElementKeyword.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElementName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PrivateDataElementName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElementNumberOfItems(const Uint32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return PrivateDataElementNumberOfItems.putUint32(value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElementValueMultiplicity(const Uint32 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return PrivateDataElementValueMultiplicity.putUint32(value, pos);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setPrivateDataElementValueRepresentation(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PrivateDataElementValueRepresentation.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::Item::setRetrieveURI(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniversalResourceIdentifierOrLocator::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = RetrieveURI.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTPrivateDataElementDefinitionSequence::DRTPrivateDataElementDefinitionSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTPrivateDataElementDefinitionSequence::DRTPrivateDataElementDefinitionSequence(const DRTPrivateDataElementDefinitionSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTPrivateDataElementDefinitionSequence &DRTPrivateDataElementDefinitionSequence::operator=(const DRTPrivateDataElementDefinitionSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTPrivateDataElementDefinitionSequence::~DRTPrivateDataElementDefinitionSequence()
+{
+ clear();
+}
+
+
+void DRTPrivateDataElementDefinitionSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTPrivateDataElementDefinitionSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTPrivateDataElementDefinitionSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTPrivateDataElementDefinitionSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTPrivateDataElementDefinitionSequence::Item &DRTPrivateDataElementDefinitionSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTPrivateDataElementDefinitionSequence::Item &DRTPrivateDataElementDefinitionSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTPrivateDataElementDefinitionSequence::Item &DRTPrivateDataElementDefinitionSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTPrivateDataElementDefinitionSequence::Item &DRTPrivateDataElementDefinitionSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTPrivateDataElementDefinitionSequence::Item &DRTPrivateDataElementDefinitionSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTPrivateDataElementDefinitionSequence::Item &DRTPrivateDataElementDefinitionSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_PrivateDataElementDefinitionSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_PrivateDataElementDefinitionSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTPrivateDataElementDefinitionSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_PrivateDataElementDefinitionSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPrimaryFluenceModeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPersonIdentificationCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "PersonIdentificationCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "PersonIdentificationCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "PersonIdentificationCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "PersonIdentificationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "PersonIdentificationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "PersonIdentificationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "PersonIdentificationCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "PersonIdentificationCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "PersonIdentificationCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "PersonIdentificationCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "PersonIdentificationCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "PersonIdentificationCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "PersonIdentificationCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "PersonIdentificationCodeSequence");
}
+OFCondition DRTPersonIdentificationCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTPersonIdentificationCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTPersonIdentificationCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTPersonIdentificationCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPlanIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
IssuerOfPatientID(DCM_IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(),
PatientBirthDate(DCM_PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(DCM_PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(DCM_PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(DCM_PatientAlternativeCalendar),
PatientSex(DCM_PatientSex),
ReferencedPatientPhotoSequence(),
QualityControlSubject(DCM_QualityControlSubject),
PatientBreedDescription(DCM_PatientBreedDescription),
PatientBreedCodeSequence(),
BreedRegistrationSequence(),
+ StrainDescription(DCM_StrainDescription),
+ StrainNomenclature(DCM_StrainNomenclature),
+ StrainCodeSequence(),
+ StrainAdditionalInformation(DCM_StrainAdditionalInformation),
+ StrainStockSequence(),
ResponsiblePerson(DCM_ResponsiblePerson),
ResponsiblePersonRole(DCM_ResponsiblePersonRole),
ResponsibleOrganization(DCM_ResponsibleOrganization),
PatientIdentityRemoved(DCM_PatientIdentityRemoved),
DeidentificationMethod(DCM_DeidentificationMethod),
DeidentificationMethodCodeSequence(),
+ SourcePatientGroupIdentificationSequence(),
+ GroupOfPatientsIdentificationSequence(),
ClinicalTrialSponsorName(DCM_ClinicalTrialSponsorName),
ClinicalTrialProtocolID(DCM_ClinicalTrialProtocolID),
ClinicalTrialProtocolName(DCM_ClinicalTrialProtocolName),
PatientAge(DCM_PatientAge),
PatientSize(DCM_PatientSize),
PatientWeight(DCM_PatientWeight),
+ PatientBodyMassIndex(DCM_PatientBodyMassIndex),
+ MeasuredAPDimension(DCM_MeasuredAPDimension),
+ MeasuredLateralDimension(DCM_MeasuredLateralDimension),
PatientSizeCodeSequence(),
+ MedicalAlerts(DCM_MedicalAlerts),
+ Allergies(DCM_Allergies),
+ SmokingStatus(DCM_SmokingStatus),
+ PregnancyStatus(DCM_PregnancyStatus),
+ LastMenstrualDate(DCM_LastMenstrualDate),
+ PatientState(DCM_PatientState),
Occupation(DCM_Occupation),
AdditionalPatientHistory(DCM_AdditionalPatientHistory),
AdmissionID(DCM_AdmissionID),
SeriesDescription(DCM_SeriesDescription),
SeriesDescriptionCodeSequence(),
OperatorsName(DCM_OperatorsName),
+ OperatorIdentificationSequence(),
ReferencedPerformedProcedureStepSequence(),
RequestAttributesSequence(),
PerformedProcedureStepID(DCM_PerformedProcedureStepID),
DeviceSerialNumber(DCM_DeviceSerialNumber),
SoftwareVersions(DCM_SoftwareVersions),
GantryID(DCM_GantryID),
+ UDISequence(),
SpatialResolution(DCM_SpatialResolution),
DateOfLastCalibration(DCM_DateOfLastCalibration),
TimeOfLastCalibration(DCM_TimeOfLastCalibration),
ReferencedStructureSetSequence(),
ReferencedDoseSequence(),
ReferencedRTPlanSequence(),
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(DCM_FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix),
PrescriptionDescription(DCM_PrescriptionDescription),
DoseReferenceSequence(),
ToleranceTableSequence(),
ReviewDate(DCM_ReviewDate),
ReviewTime(DCM_ReviewTime),
ReviewerName(DCM_ReviewerName),
+ ReferencedImageSequence(),
+ ReferencedInstanceSequence(),
+ DerivationDescription(DCM_DerivationDescription),
+ DerivationCodeSequence(),
+ SourceImageSequence(),
+ SourceInstanceSequence(),
SOPClassUID(DCM_SOPClassUID),
SOPInstanceUID(DCM_SOPInstanceUID),
SpecificCharacterSet(DCM_SpecificCharacterSet),
RelatedGeneralSOPClassUID(DCM_RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(DCM_OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(),
+ ContextGroupIdentificationSequence(),
+ MappingResourceIdentificationSequence(),
TimezoneOffsetFromUTC(DCM_TimezoneOffsetFromUTC),
ContributingEquipmentSequence(),
SOPInstanceStatus(DCM_SOPInstanceStatus),
IssuerOfPatientID(copy.IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
PatientBirthDate(copy.PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(copy.PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(copy.PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(copy.PatientAlternativeCalendar),
PatientSex(copy.PatientSex),
ReferencedPatientPhotoSequence(copy.ReferencedPatientPhotoSequence),
QualityControlSubject(copy.QualityControlSubject),
PatientBreedDescription(copy.PatientBreedDescription),
PatientBreedCodeSequence(copy.PatientBreedCodeSequence),
BreedRegistrationSequence(copy.BreedRegistrationSequence),
+ StrainDescription(copy.StrainDescription),
+ StrainNomenclature(copy.StrainNomenclature),
+ StrainCodeSequence(copy.StrainCodeSequence),
+ StrainAdditionalInformation(copy.StrainAdditionalInformation),
+ StrainStockSequence(copy.StrainStockSequence),
ResponsiblePerson(copy.ResponsiblePerson),
ResponsiblePersonRole(copy.ResponsiblePersonRole),
ResponsibleOrganization(copy.ResponsibleOrganization),
PatientIdentityRemoved(copy.PatientIdentityRemoved),
DeidentificationMethod(copy.DeidentificationMethod),
DeidentificationMethodCodeSequence(copy.DeidentificationMethodCodeSequence),
+ SourcePatientGroupIdentificationSequence(copy.SourcePatientGroupIdentificationSequence),
+ GroupOfPatientsIdentificationSequence(copy.GroupOfPatientsIdentificationSequence),
ClinicalTrialSponsorName(copy.ClinicalTrialSponsorName),
ClinicalTrialProtocolID(copy.ClinicalTrialProtocolID),
ClinicalTrialProtocolName(copy.ClinicalTrialProtocolName),
PatientAge(copy.PatientAge),
PatientSize(copy.PatientSize),
PatientWeight(copy.PatientWeight),
+ PatientBodyMassIndex(copy.PatientBodyMassIndex),
+ MeasuredAPDimension(copy.MeasuredAPDimension),
+ MeasuredLateralDimension(copy.MeasuredLateralDimension),
PatientSizeCodeSequence(copy.PatientSizeCodeSequence),
+ MedicalAlerts(copy.MedicalAlerts),
+ Allergies(copy.Allergies),
+ SmokingStatus(copy.SmokingStatus),
+ PregnancyStatus(copy.PregnancyStatus),
+ LastMenstrualDate(copy.LastMenstrualDate),
+ PatientState(copy.PatientState),
Occupation(copy.Occupation),
AdditionalPatientHistory(copy.AdditionalPatientHistory),
AdmissionID(copy.AdmissionID),
SeriesDescription(copy.SeriesDescription),
SeriesDescriptionCodeSequence(copy.SeriesDescriptionCodeSequence),
OperatorsName(copy.OperatorsName),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
ReferencedPerformedProcedureStepSequence(copy.ReferencedPerformedProcedureStepSequence),
RequestAttributesSequence(copy.RequestAttributesSequence),
PerformedProcedureStepID(copy.PerformedProcedureStepID),
DeviceSerialNumber(copy.DeviceSerialNumber),
SoftwareVersions(copy.SoftwareVersions),
GantryID(copy.GantryID),
+ UDISequence(copy.UDISequence),
SpatialResolution(copy.SpatialResolution),
DateOfLastCalibration(copy.DateOfLastCalibration),
TimeOfLastCalibration(copy.TimeOfLastCalibration),
ReferencedStructureSetSequence(copy.ReferencedStructureSetSequence),
ReferencedDoseSequence(copy.ReferencedDoseSequence),
ReferencedRTPlanSequence(copy.ReferencedRTPlanSequence),
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(copy.FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix),
PrescriptionDescription(copy.PrescriptionDescription),
DoseReferenceSequence(copy.DoseReferenceSequence),
ToleranceTableSequence(copy.ToleranceTableSequence),
ReviewDate(copy.ReviewDate),
ReviewTime(copy.ReviewTime),
ReviewerName(copy.ReviewerName),
+ ReferencedImageSequence(copy.ReferencedImageSequence),
+ ReferencedInstanceSequence(copy.ReferencedInstanceSequence),
+ DerivationDescription(copy.DerivationDescription),
+ DerivationCodeSequence(copy.DerivationCodeSequence),
+ SourceImageSequence(copy.SourceImageSequence),
+ SourceInstanceSequence(copy.SourceInstanceSequence),
SOPClassUID(copy.SOPClassUID),
SOPInstanceUID(copy.SOPInstanceUID),
SpecificCharacterSet(copy.SpecificCharacterSet),
RelatedGeneralSOPClassUID(copy.RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(copy.OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(copy.CodingSchemeIdentificationSequence),
+ ContextGroupIdentificationSequence(copy.ContextGroupIdentificationSequence),
+ MappingResourceIdentificationSequence(copy.MappingResourceIdentificationSequence),
TimezoneOffsetFromUTC(copy.TimezoneOffsetFromUTC),
ContributingEquipmentSequence(copy.ContributingEquipmentSequence),
SOPInstanceStatus(copy.SOPInstanceStatus),
IssuerOfPatientID = copy.IssuerOfPatientID;
IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
PatientBirthDate = copy.PatientBirthDate;
+ PatientBirthDateInAlternativeCalendar = copy.PatientBirthDateInAlternativeCalendar;
+ PatientDeathDateInAlternativeCalendar = copy.PatientDeathDateInAlternativeCalendar;
+ PatientAlternativeCalendar = copy.PatientAlternativeCalendar;
PatientSex = copy.PatientSex;
ReferencedPatientPhotoSequence = copy.ReferencedPatientPhotoSequence;
QualityControlSubject = copy.QualityControlSubject;
PatientBreedDescription = copy.PatientBreedDescription;
PatientBreedCodeSequence = copy.PatientBreedCodeSequence;
BreedRegistrationSequence = copy.BreedRegistrationSequence;
+ StrainDescription = copy.StrainDescription;
+ StrainNomenclature = copy.StrainNomenclature;
+ StrainCodeSequence = copy.StrainCodeSequence;
+ StrainAdditionalInformation = copy.StrainAdditionalInformation;
+ StrainStockSequence = copy.StrainStockSequence;
ResponsiblePerson = copy.ResponsiblePerson;
ResponsiblePersonRole = copy.ResponsiblePersonRole;
ResponsibleOrganization = copy.ResponsibleOrganization;
PatientIdentityRemoved = copy.PatientIdentityRemoved;
DeidentificationMethod = copy.DeidentificationMethod;
DeidentificationMethodCodeSequence = copy.DeidentificationMethodCodeSequence;
+ SourcePatientGroupIdentificationSequence = copy.SourcePatientGroupIdentificationSequence;
+ GroupOfPatientsIdentificationSequence = copy.GroupOfPatientsIdentificationSequence;
ClinicalTrialSponsorName = copy.ClinicalTrialSponsorName;
ClinicalTrialProtocolID = copy.ClinicalTrialProtocolID;
ClinicalTrialProtocolName = copy.ClinicalTrialProtocolName;
PatientAge = copy.PatientAge;
PatientSize = copy.PatientSize;
PatientWeight = copy.PatientWeight;
+ PatientBodyMassIndex = copy.PatientBodyMassIndex;
+ MeasuredAPDimension = copy.MeasuredAPDimension;
+ MeasuredLateralDimension = copy.MeasuredLateralDimension;
PatientSizeCodeSequence = copy.PatientSizeCodeSequence;
+ MedicalAlerts = copy.MedicalAlerts;
+ Allergies = copy.Allergies;
+ SmokingStatus = copy.SmokingStatus;
+ PregnancyStatus = copy.PregnancyStatus;
+ LastMenstrualDate = copy.LastMenstrualDate;
+ PatientState = copy.PatientState;
Occupation = copy.Occupation;
AdditionalPatientHistory = copy.AdditionalPatientHistory;
AdmissionID = copy.AdmissionID;
SeriesDescription = copy.SeriesDescription;
SeriesDescriptionCodeSequence = copy.SeriesDescriptionCodeSequence;
OperatorsName = copy.OperatorsName;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
ReferencedPerformedProcedureStepSequence = copy.ReferencedPerformedProcedureStepSequence;
RequestAttributesSequence = copy.RequestAttributesSequence;
PerformedProcedureStepID = copy.PerformedProcedureStepID;
DeviceSerialNumber = copy.DeviceSerialNumber;
SoftwareVersions = copy.SoftwareVersions;
GantryID = copy.GantryID;
+ UDISequence = copy.UDISequence;
SpatialResolution = copy.SpatialResolution;
DateOfLastCalibration = copy.DateOfLastCalibration;
TimeOfLastCalibration = copy.TimeOfLastCalibration;
ReferencedStructureSetSequence = copy.ReferencedStructureSetSequence;
ReferencedDoseSequence = copy.ReferencedDoseSequence;
ReferencedRTPlanSequence = copy.ReferencedRTPlanSequence;
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix = copy.FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix;
PrescriptionDescription = copy.PrescriptionDescription;
DoseReferenceSequence = copy.DoseReferenceSequence;
ToleranceTableSequence = copy.ToleranceTableSequence;
ReviewDate = copy.ReviewDate;
ReviewTime = copy.ReviewTime;
ReviewerName = copy.ReviewerName;
+ ReferencedImageSequence = copy.ReferencedImageSequence;
+ ReferencedInstanceSequence = copy.ReferencedInstanceSequence;
+ DerivationDescription = copy.DerivationDescription;
+ DerivationCodeSequence = copy.DerivationCodeSequence;
+ SourceImageSequence = copy.SourceImageSequence;
+ SourceInstanceSequence = copy.SourceInstanceSequence;
SOPClassUID = copy.SOPClassUID;
SOPInstanceUID = copy.SOPInstanceUID;
SpecificCharacterSet = copy.SpecificCharacterSet;
RelatedGeneralSOPClassUID = copy.RelatedGeneralSOPClassUID;
OriginalSpecializedSOPClassUID = copy.OriginalSpecializedSOPClassUID;
CodingSchemeIdentificationSequence = copy.CodingSchemeIdentificationSequence;
+ ContextGroupIdentificationSequence = copy.ContextGroupIdentificationSequence;
+ MappingResourceIdentificationSequence = copy.MappingResourceIdentificationSequence;
TimezoneOffsetFromUTC = copy.TimezoneOffsetFromUTC;
ContributingEquipmentSequence = copy.ContributingEquipmentSequence;
SOPInstanceStatus = copy.SOPInstanceStatus;
IssuerOfPatientID.clear();
IssuerOfPatientIDQualifiersSequence.clear();
PatientBirthDate.clear();
+ PatientBirthDateInAlternativeCalendar.clear();
+ PatientDeathDateInAlternativeCalendar.clear();
+ PatientAlternativeCalendar.clear();
PatientSex.clear();
ReferencedPatientPhotoSequence.clear();
QualityControlSubject.clear();
PatientBreedDescription.clear();
PatientBreedCodeSequence.clear();
BreedRegistrationSequence.clear();
+ StrainDescription.clear();
+ StrainNomenclature.clear();
+ StrainCodeSequence.clear();
+ StrainAdditionalInformation.clear();
+ StrainStockSequence.clear();
ResponsiblePerson.clear();
ResponsiblePersonRole.clear();
ResponsibleOrganization.clear();
PatientIdentityRemoved.clear();
DeidentificationMethod.clear();
DeidentificationMethodCodeSequence.clear();
+ SourcePatientGroupIdentificationSequence.clear();
+ GroupOfPatientsIdentificationSequence.clear();
ClinicalTrialSponsorName.clear();
ClinicalTrialProtocolID.clear();
ClinicalTrialProtocolName.clear();
PatientAge.clear();
PatientSize.clear();
PatientWeight.clear();
+ PatientBodyMassIndex.clear();
+ MeasuredAPDimension.clear();
+ MeasuredLateralDimension.clear();
PatientSizeCodeSequence.clear();
+ MedicalAlerts.clear();
+ Allergies.clear();
+ SmokingStatus.clear();
+ PregnancyStatus.clear();
+ LastMenstrualDate.clear();
+ PatientState.clear();
Occupation.clear();
AdditionalPatientHistory.clear();
AdmissionID.clear();
SeriesDescription.clear();
SeriesDescriptionCodeSequence.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
ReferencedPerformedProcedureStepSequence.clear();
RequestAttributesSequence.clear();
PerformedProcedureStepID.clear();
DeviceSerialNumber.clear();
SoftwareVersions.clear();
GantryID.clear();
+ UDISequence.clear();
SpatialResolution.clear();
DateOfLastCalibration.clear();
TimeOfLastCalibration.clear();
ReferencedStructureSetSequence.clear();
ReferencedDoseSequence.clear();
ReferencedRTPlanSequence.clear();
+ FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix.clear();
PrescriptionDescription.clear();
DoseReferenceSequence.clear();
ToleranceTableSequence.clear();
ReviewDate.clear();
ReviewTime.clear();
ReviewerName.clear();
+ ReferencedImageSequence.clear();
+ ReferencedInstanceSequence.clear();
+ DerivationDescription.clear();
+ DerivationCodeSequence.clear();
+ SourceImageSequence.clear();
+ SourceInstanceSequence.clear();
SOPClassUID.clear();
SOPInstanceUID.clear();
SpecificCharacterSet.clear();
RelatedGeneralSOPClassUID.clear();
OriginalSpecializedSOPClassUID.clear();
CodingSchemeIdentificationSequence.clear();
+ ContextGroupIdentificationSequence.clear();
+ MappingResourceIdentificationSequence.clear();
TimezoneOffsetFromUTC.clear();
ContributingEquipmentSequence.clear();
SOPInstanceStatus.clear();
getAndCheckElementFromDataset(dataset, DeviceSerialNumber, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SoftwareVersions, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, GantryID, "1", "3", "GeneralEquipmentModule");
+ UDISequence.read(dataset, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SpatialResolution, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, DateOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, TimeOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
ReferencedStructureSetSequence.read(dataset, "1-n", "1C", "RTGeneralPlanModule");
ReferencedDoseSequence.read(dataset, "1-n", "3", "RTGeneralPlanModule");
ReferencedRTPlanSequence.read(dataset, "1-n", "3", "RTGeneralPlanModule");
+ getAndCheckElementFromDataset(dataset, FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix, "16", "3", "RTGeneralPlanModule");
// --- RTPrescriptionModule (U) ---
getAndCheckElementFromDataset(dataset, PrescriptionDescription, "1", "3", "RTPrescriptionModule");
getAndCheckElementFromDataset(dataset, ReviewerName, "1", "2C", "ApprovalModule");
}
+ // --- GeneralReferenceModule (U) ---
+ ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralReferenceModule");
+ DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+
// --- SOPCommonModule (M) ---
getAndCheckElementFromDataset(dataset, SOPClassUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, SOPInstanceUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, RelatedGeneralSOPClassUID, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, OriginalSpecializedSOPClassUID, "1", "3", "SOPCommonModule");
CodingSchemeIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ ContextGroupIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ MappingResourceIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, TimezoneOffsetFromUTC, "1", "3", "SOPCommonModule");
ContributingEquipmentSequence.read(dataset, "1-n", "3", "SOPCommonModule");
// getAndCheckElementFromDataset(dataset, InstanceNumber, "1", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, IssuerOfPatientID, "1", "3", "PatientModule");
IssuerOfPatientIDQualifiersSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBirthDate, "1", "2", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientBirthDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientDeathDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientAlternativeCalendar, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientSex, "1", "2", "PatientModule");
ReferencedPatientPhotoSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, QualityControlSubject, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBreedDescription, "1", "2C", "PatientModule");
PatientBreedCodeSequence.read(dataset, "1-n", "2C", "PatientModule");
BreedRegistrationSequence.read(dataset, "1-n", "2C", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainDescription, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainNomenclature, "1", "3", "PatientModule");
+ StrainCodeSequence.read(dataset, "1-n", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainAdditionalInformation, "1", "3", "PatientModule");
+ StrainStockSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePerson, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePersonRole, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsibleOrganization, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientIdentityRemoved, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, DeidentificationMethod, "1-n", "1C", "PatientModule");
DeidentificationMethodCodeSequence.read(dataset, "1-n", "1C", "PatientModule");
+ SourcePatientGroupIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
+ GroupOfPatientsIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (dataset.tagExists(DCM_ClinicalTrialSponsorName) ||
getAndCheckElementFromDataset(dataset, PatientAge, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientSize, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientWeight, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientBodyMassIndex, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredAPDimension, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredLateralDimension, "1", "3", "PatientStudyModule");
PatientSizeCodeSequence.read(dataset, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MedicalAlerts, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, Allergies, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, SmokingStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PregnancyStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, LastMenstrualDate, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientState, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, Occupation, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdditionalPatientHistory, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdmissionID, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, SeriesDescription, "1", "3", "RTSeriesModule");
SeriesDescriptionCodeSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, OperatorsName, "1-n", "2", "RTSeriesModule");
+ OperatorIdentificationSequence.read(dataset, "1-n", "3", "RTSeriesModule");
ReferencedPerformedProcedureStepSequence.read(dataset, "1-n", "3", "RTSeriesModule");
RequestAttributesSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, PerformedProcedureStepID, "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(IssuerOfPatientID), "1", "3", "PatientModule");
if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmDate(PatientBirthDate), "1", "2", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientBirthDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientDeathDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmCodeString(PatientAlternativeCalendar), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientSex), "1", "2", "PatientModule");
if (result.good()) result = ReferencedPatientPhotoSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlSubject), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(PatientBreedDescription), "1", "2C", "PatientModule");
if (result.good()) result = PatientBreedCodeSequence.write(dataset, "1-n" ,"2C", "PatientModule");
if (result.good()) result = BreedRegistrationSequence.write(dataset, "1-n" ,"2C", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedCharacters(StrainDescription), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(StrainNomenclature), "1", "3", "PatientModule");
+ if (result.good()) result = StrainCodeSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedText(StrainAdditionalInformation), "1", "3", "PatientModule");
+ if (result.good()) result = StrainStockSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmPersonName(ResponsiblePerson), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(ResponsiblePersonRole), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(ResponsibleOrganization), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientIdentityRemoved), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(DeidentificationMethod), "1-n", "1C", "PatientModule");
if (result.good()) result = DeidentificationMethodCodeSequence.write(dataset, "1-n" ,"1C", "PatientModule");
+ if (result.good()) result = SourcePatientGroupIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ if (result.good()) result = GroupOfPatientsIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (isClinicalTrialSubjectModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmAgeString(PatientAge), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientSize), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientWeight), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(PatientBodyMassIndex), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredAPDimension), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredLateralDimension), "1", "3", "PatientStudyModule");
if (result.good()) result = PatientSizeCodeSequence.write(dataset, "1-n" ,"3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(MedicalAlerts), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(Allergies), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmCodeString(SmokingStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmUnsignedShort(PregnancyStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDate(LastMenstrualDate), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientState), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmShortString(Occupation), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongText(AdditionalPatientHistory), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(AdmissionID), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(SeriesDescription), "1", "3", "RTSeriesModule");
if (result.good()) result = SeriesDescriptionCodeSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmPersonName(OperatorsName), "1-n", "2", "RTSeriesModule");
+ if (result.good()) result = OperatorIdentificationSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = ReferencedPerformedProcedureStepSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = RequestAttributesSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmShortString(PerformedProcedureStepID), "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(DeviceSerialNumber), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(SoftwareVersions), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(GantryID), "1", "3", "GeneralEquipmentModule");
+ if (result.good()) result = UDISequence.write(dataset, "1-n" ,"3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDecimalString(SpatialResolution), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(DateOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmTime(TimeOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
if (result.good()) result = ReferencedStructureSetSequence.write(dataset, "1-n" ,"1C", "RTGeneralPlanModule");
if (result.good()) result = ReferencedDoseSequence.write(dataset, "1-n" ,"3", "RTGeneralPlanModule");
if (result.good()) result = ReferencedRTPlanSequence.write(dataset, "1-n" ,"3", "RTGeneralPlanModule");
+ addElementToDataset(result, dataset, new DcmFloatingPointDouble(FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix), "16", "3", "RTGeneralPlanModule");
// --- RTPrescriptionModule (U) ---
if (isRTPrescriptionModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmPersonName(ReviewerName), "1", "2C", "ApprovalModule");
}
+ // --- GeneralReferenceModule (U) ---
+ if (isGeneralReferenceModulePresent(OFFalse /*complete*/))
+ {
+ if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralReferenceModule");
+ if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ }
+
// --- SOPCommonModule (M) ---
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPClassUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPInstanceUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(RelatedGeneralSOPClassUID), "1-n", "3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(OriginalSpecializedSOPClassUID), "1", "3", "SOPCommonModule");
if (result.good()) result = CodingSchemeIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = ContextGroupIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = MappingResourceIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmShortString(TimezoneOffsetFromUTC), "1", "3", "SOPCommonModule");
if (result.good()) result = ContributingEquipmentSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
// addElementToDataset(result, dataset, new DcmIntegerString(InstanceNumber), "1", "3", "SOPCommonModule");
!PatientAge.isEmpty() ||
!PatientSize.isEmpty() ||
!PatientWeight.isEmpty() ||
+ !PatientBodyMassIndex.isEmpty() ||
+ !MeasuredAPDimension.isEmpty() ||
+ !MeasuredLateralDimension.isEmpty() ||
!PatientSizeCodeSequence.isEmpty() ||
+ !MedicalAlerts.isEmpty() ||
+ !Allergies.isEmpty() ||
+ !SmokingStatus.isEmpty() ||
+ !PregnancyStatus.isEmpty() ||
+ !LastMenstrualDate.isEmpty() ||
+ !PatientState.isEmpty() ||
!Occupation.isEmpty() ||
!AdditionalPatientHistory.isEmpty() ||
!AdmissionID.isEmpty() ||
}
+OFBool DRTPlanIOD::isGeneralReferenceModulePresent(const OFBool /*complete*/)
+{
+ /* check whether at least one attribute is present */
+ return !ReferencedImageSequence.isEmpty() ||
+ !ReferencedInstanceSequence.isEmpty() ||
+ !DerivationDescription.isEmpty() ||
+ !DerivationCodeSequence.isEmpty() ||
+ !SourceImageSequence.isEmpty() ||
+ !SourceInstanceSequence.isEmpty();
+}
+
+
OFBool DRTPlanIOD::isCommonInstanceReferenceModulePresent(const OFBool /*complete*/)
{
/* check whether at least one attribute is present */
}
+OFCondition DRTPlanIOD::getAllergies(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(Allergies, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getApprovalStatus(OFString &value, const signed long pos) const
{
return getStringValueFromElement(ApprovalStatus, value, pos);
}
+OFCondition DRTPlanIOD::getDerivationDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(DerivationDescription, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getDeviceSerialNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(DeviceSerialNumber, value, pos);
}
+OFCondition DRTPlanIOD::getFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmFloatingPointDouble &, FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix).getFloat64(value, pos);
+}
+
+
OFCondition DRTPlanIOD::getFrameOfReferenceUID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(FrameOfReferenceUID, value, pos);
}
+OFCondition DRTPlanIOD::getLastMenstrualDate(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(LastMenstrualDate, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getLongitudinalTemporalInformationModified(OFString &value, const signed long pos) const
{
return getStringValueFromElement(LongitudinalTemporalInformationModified, value, pos);
}
+OFCondition DRTPlanIOD::getMeasuredAPDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredAPDimension, value, pos);
+}
+
+
+OFCondition DRTPlanIOD::getMeasuredAPDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredAPDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTPlanIOD::getMeasuredLateralDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredLateralDimension, value, pos);
+}
+
+
+OFCondition DRTPlanIOD::getMeasuredLateralDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredLateralDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTPlanIOD::getMedicalAlerts(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MedicalAlerts, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getModality(OFString &value, const signed long pos) const
{
return getStringValueFromElement(Modality, value, pos);
}
+OFCondition DRTPlanIOD::getPatientAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getPatientBirthDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthDate, value, pos);
}
+OFCondition DRTPlanIOD::getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBirthDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getPatientBirthTime(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthTime, value, pos);
}
+OFCondition DRTPlanIOD::getPatientBodyMassIndex(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBodyMassIndex, value, pos);
+}
+
+
+OFCondition DRTPlanIOD::getPatientBodyMassIndex(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, PatientBodyMassIndex).getFloat64(value, pos);
+}
+
+
OFCondition DRTPlanIOD::getPatientBreedDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBreedDescription, value, pos);
}
+OFCondition DRTPlanIOD::getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientDeathDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getPatientID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientID, value, pos);
}
+OFCondition DRTPlanIOD::getPatientState(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientState, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getPatientWeight(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientWeight, value, pos);
}
+OFCondition DRTPlanIOD::getPregnancyStatus(Uint16 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmUnsignedShort &, PregnancyStatus).getUint16(value, pos);
+}
+
+
OFCondition DRTPlanIOD::getPrescriptionDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PrescriptionDescription, value, pos);
}
+OFCondition DRTPlanIOD::getSmokingStatus(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(SmokingStatus, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getSoftwareVersions(OFString &value, const signed long pos) const
{
return getStringValueFromElement(SoftwareVersions, value, pos);
}
+OFCondition DRTPlanIOD::getStrainAdditionalInformation(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainAdditionalInformation, value, pos);
+}
+
+
+OFCondition DRTPlanIOD::getStrainDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainDescription, value, pos);
+}
+
+
+OFCondition DRTPlanIOD::getStrainNomenclature(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainNomenclature, value, pos);
+}
+
+
OFCondition DRTPlanIOD::getStudyDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(StudyDate, value, pos);
}
+OFCondition DRTPlanIOD::setAllergies(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = Allergies.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setApprovalStatus(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setDerivationDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = DerivationDescription.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setDeviceSerialNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setFrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix(const Float64 value, const unsigned long pos)
+{
+ return FrameOfReferenceToDisplayedCoordinateSystemTransformationMatrix.putFloat64(value, pos);
+}
+
+
OFCondition DRTPlanIOD::setFrameOfReferenceUID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setLastMenstrualDate(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LastMenstrualDate.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setLongitudinalTemporalInformationModified(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setMeasuredAPDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredAPDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTPlanIOD::setMeasuredLateralDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredLateralDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTPlanIOD::setMedicalAlerts(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = MedicalAlerts.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setModality(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setPatientAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setPatientBirthDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBirthDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setPatientBirthTime(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setPatientBodyMassIndex(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBodyMassIndex.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setPatientBreedDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientDeathDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setPatientID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setPatientState(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientState.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setPatientWeight(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTPlanIOD::setPregnancyStatus(const Uint16 value, const unsigned long pos)
+{
+ return PregnancyStatus.putUint16(value, pos);
+}
+
+
OFCondition DRTPlanIOD::setPrescriptionDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
}
+OFCondition DRTPlanIOD::setSmokingStatus(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = SmokingStatus.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setSoftwareVersions(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
}
+OFCondition DRTPlanIOD::setStrainAdditionalInformation(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = StrainAdditionalInformation.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTPlanIOD::setStrainDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainDescription.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTPlanIOD::setStrainNomenclature(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainNomenclature.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTPlanIOD::setStudyDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPurposeOfReferenceCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "PurposeOfReferenceCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "PurposeOfReferenceCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "PurposeOfReferenceCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "PurposeOfReferenceCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "PurposeOfReferenceCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "PurposeOfReferenceCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "PurposeOfReferenceCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "PurposeOfReferenceCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "PurposeOfReferenceCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "PurposeOfReferenceCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "PurposeOfReferenceCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "PurposeOfReferenceCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "PurposeOfReferenceCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "PurposeOfReferenceCodeSequence");
}
+OFCondition DRTPurposeOfReferenceCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTPurposeOfReferenceCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTPurposeOfReferenceCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTPurposeOfReferenceCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPhysiciansOfRecordIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPerformedProtocolCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
ProtocolContextSequence(emptyDefaultItem /*emptyDefaultSequence*/),
URNCodeValue(DCM_URNCodeValue)
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
ProtocolContextSequence(copy.ProtocolContextSequence),
URNCodeValue(copy.URNCodeValue)
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
ProtocolContextSequence = copy.ProtocolContextSequence;
URNCodeValue = copy.URNCodeValue;
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "PerformedProtocolCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "PerformedProtocolCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "PerformedProtocolCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "PerformedProtocolCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "PerformedProtocolCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "PerformedProtocolCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "PerformedProtocolCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "PerformedProtocolCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "PerformedProtocolCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "PerformedProtocolCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "PerformedProtocolCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "PerformedProtocolCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "PerformedProtocolCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "PerformedProtocolCodeSequence");
}
+OFCondition DRTPerformedProtocolCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTPerformedProtocolCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTPerformedProtocolCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTPerformedProtocolCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPhysiciansReadingStudyIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPatientSpeciesCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "PatientSpeciesCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "PatientSpeciesCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "PatientSpeciesCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "PatientSpeciesCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "PatientSpeciesCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "PatientSpeciesCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "PatientSpeciesCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "PatientSpeciesCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "PatientSpeciesCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "PatientSpeciesCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "PatientSpeciesCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "PatientSpeciesCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "PatientSpeciesCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "PatientSpeciesCodeSequence");
}
+OFCondition DRTPatientSpeciesCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTPatientSpeciesCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTPatientSpeciesCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTPatientSpeciesCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPatientSizeCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "PatientSizeCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "PatientSizeCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "PatientSizeCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "PatientSizeCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "PatientSizeCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "PatientSizeCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "PatientSizeCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "PatientSizeCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "PatientSizeCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "PatientSizeCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "PatientSizeCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "PatientSizeCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "PatientSizeCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "PatientSizeCodeSequence");
}
+OFCondition DRTPatientSizeCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTPatientSizeCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTPatientSizeCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTPatientSizeCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPatientSetupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPredecessorStructureSetSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTPlannedVerificationImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTQuantityDefinitionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRequestAttributesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBrachyApplicationSetupSequenceInRTDoseModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBrachyApplicationSetupSequenceInRTFractionSchemeModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRecordedBlockSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBolusSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBolusSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBolusSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBeamSequenceInRTDoseModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::Item(const OFBool emptyDefaultItem)
: EmptyDefaultItem(emptyDefaultItem),
+ AlternateBeamDose(DCM_AlternateBeamDose),
+ AlternateBeamDoseType(DCM_AlternateBeamDoseType),
BeamDeliveryDurationLimit(DCM_BeamDeliveryDurationLimit),
BeamDose(DCM_BeamDose),
BeamDoseSpecificationPoint(DCM_BeamDoseSpecificationPoint),
+ BeamDoseType(DCM_BeamDoseType),
BeamDoseVerificationControlPointSequence(emptyDefaultItem /*emptyDefaultSequence*/),
BeamMeterset(DCM_BeamMeterset),
ReferencedBeamNumber(DCM_ReferencedBeamNumber)
DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::Item(const Item ©)
: EmptyDefaultItem(copy.EmptyDefaultItem),
+ AlternateBeamDose(copy.AlternateBeamDose),
+ AlternateBeamDoseType(copy.AlternateBeamDoseType),
BeamDeliveryDurationLimit(copy.BeamDeliveryDurationLimit),
BeamDose(copy.BeamDose),
BeamDoseSpecificationPoint(copy.BeamDoseSpecificationPoint),
+ BeamDoseType(copy.BeamDoseType),
BeamDoseVerificationControlPointSequence(copy.BeamDoseVerificationControlPointSequence),
BeamMeterset(copy.BeamMeterset),
ReferencedBeamNumber(copy.ReferencedBeamNumber)
if (this != ©)
{
EmptyDefaultItem = copy.EmptyDefaultItem;
+ AlternateBeamDose = copy.AlternateBeamDose;
+ AlternateBeamDoseType = copy.AlternateBeamDoseType;
BeamDeliveryDurationLimit = copy.BeamDeliveryDurationLimit;
BeamDose = copy.BeamDose;
BeamDoseSpecificationPoint = copy.BeamDoseSpecificationPoint;
+ BeamDoseType = copy.BeamDoseType;
BeamDoseVerificationControlPointSequence = copy.BeamDoseVerificationControlPointSequence;
BeamMeterset = copy.BeamMeterset;
ReferencedBeamNumber = copy.ReferencedBeamNumber;
ReferencedBeamNumber.clear();
BeamDoseSpecificationPoint.clear();
BeamDose.clear();
+ BeamDoseType.clear();
+ AlternateBeamDose.clear();
+ AlternateBeamDoseType.clear();
BeamDoseVerificationControlPointSequence.clear();
BeamMeterset.clear();
BeamDeliveryDurationLimit.clear();
return ReferencedBeamNumber.isEmpty() &&
BeamDoseSpecificationPoint.isEmpty() &&
BeamDose.isEmpty() &&
+ BeamDoseType.isEmpty() &&
+ AlternateBeamDose.isEmpty() &&
+ AlternateBeamDoseType.isEmpty() &&
BeamDoseVerificationControlPointSequence.isEmpty() &&
BeamMeterset.isEmpty() &&
BeamDeliveryDurationLimit.isEmpty();
getAndCheckElementFromDataset(item, ReferencedBeamNumber, "1", "1", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamDoseSpecificationPoint, "3", "3", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamDose, "1", "3", "ReferencedBeamSequence");
+ getAndCheckElementFromDataset(item, BeamDoseType, "1", "1C", "ReferencedBeamSequence");
+ getAndCheckElementFromDataset(item, AlternateBeamDose, "1", "3", "ReferencedBeamSequence");
+ getAndCheckElementFromDataset(item, AlternateBeamDoseType, "1", "1C", "ReferencedBeamSequence");
BeamDoseVerificationControlPointSequence.read(item, "1-n", "3", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamMeterset, "1", "3", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamDeliveryDurationLimit, "1", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(ReferencedBeamNumber), "1", "1", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(BeamDoseSpecificationPoint), "3", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(BeamDose), "1", "3", "ReferencedBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(BeamDoseType), "1", "1C", "ReferencedBeamSequence");
+ addElementToDataset(result, item, new DcmDecimalString(AlternateBeamDose), "1", "3", "ReferencedBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(AlternateBeamDoseType), "1", "1C", "ReferencedBeamSequence");
if (result.good()) result = BeamDoseVerificationControlPointSequence.write(item, "1-n", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(BeamMeterset), "1", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmFloatingPointDouble(BeamDeliveryDurationLimit), "1", "3", "ReferencedBeamSequence");
}
+OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::getAlternateBeamDose(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(AlternateBeamDose, value, pos);
+}
+
+
+OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::getAlternateBeamDose(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, AlternateBeamDose).getFloat64(value, pos);
+}
+
+
+OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::getAlternateBeamDoseType(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(AlternateBeamDoseType, value, pos);
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::getBeamDeliveryDurationLimit(Float64 &value, const unsigned long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::getBeamDoseType(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(BeamDoseType, value, pos);
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::getBeamMeterset(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::setAlternateBeamDose(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = AlternateBeamDose.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::setAlternateBeamDoseType(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = AlternateBeamDoseType.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::setBeamDeliveryDurationLimit(const Float64 value, const unsigned long pos)
{
if (EmptyDefaultItem)
}
+OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::setBeamDoseType(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = BeamDoseType.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTGeneralTreatmentRecordModule::Item::setBeamMeterset(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedBeamSequenceInRTFractionSchemeModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::Item(const OFBool emptyDefaultItem)
: EmptyDefaultItem(emptyDefaultItem),
+ AlternateBeamDose(DCM_AlternateBeamDose),
+ AlternateBeamDoseType(DCM_AlternateBeamDoseType),
BeamDeliveryDurationLimit(DCM_BeamDeliveryDurationLimit),
BeamDose(DCM_BeamDose),
BeamDoseSpecificationPoint(DCM_BeamDoseSpecificationPoint),
+ BeamDoseType(DCM_BeamDoseType),
BeamDoseVerificationControlPointSequence(emptyDefaultItem /*emptyDefaultSequence*/),
BeamMeterset(DCM_BeamMeterset),
ReferencedBeamNumber(DCM_ReferencedBeamNumber)
DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::Item(const Item ©)
: EmptyDefaultItem(copy.EmptyDefaultItem),
+ AlternateBeamDose(copy.AlternateBeamDose),
+ AlternateBeamDoseType(copy.AlternateBeamDoseType),
BeamDeliveryDurationLimit(copy.BeamDeliveryDurationLimit),
BeamDose(copy.BeamDose),
BeamDoseSpecificationPoint(copy.BeamDoseSpecificationPoint),
+ BeamDoseType(copy.BeamDoseType),
BeamDoseVerificationControlPointSequence(copy.BeamDoseVerificationControlPointSequence),
BeamMeterset(copy.BeamMeterset),
ReferencedBeamNumber(copy.ReferencedBeamNumber)
if (this != ©)
{
EmptyDefaultItem = copy.EmptyDefaultItem;
+ AlternateBeamDose = copy.AlternateBeamDose;
+ AlternateBeamDoseType = copy.AlternateBeamDoseType;
BeamDeliveryDurationLimit = copy.BeamDeliveryDurationLimit;
BeamDose = copy.BeamDose;
BeamDoseSpecificationPoint = copy.BeamDoseSpecificationPoint;
+ BeamDoseType = copy.BeamDoseType;
BeamDoseVerificationControlPointSequence = copy.BeamDoseVerificationControlPointSequence;
BeamMeterset = copy.BeamMeterset;
ReferencedBeamNumber = copy.ReferencedBeamNumber;
ReferencedBeamNumber.clear();
BeamDoseSpecificationPoint.clear();
BeamDose.clear();
+ BeamDoseType.clear();
+ AlternateBeamDose.clear();
+ AlternateBeamDoseType.clear();
BeamDoseVerificationControlPointSequence.clear();
BeamMeterset.clear();
BeamDeliveryDurationLimit.clear();
return ReferencedBeamNumber.isEmpty() &&
BeamDoseSpecificationPoint.isEmpty() &&
BeamDose.isEmpty() &&
+ BeamDoseType.isEmpty() &&
+ AlternateBeamDose.isEmpty() &&
+ AlternateBeamDoseType.isEmpty() &&
BeamDoseVerificationControlPointSequence.isEmpty() &&
BeamMeterset.isEmpty() &&
BeamDeliveryDurationLimit.isEmpty();
getAndCheckElementFromDataset(item, ReferencedBeamNumber, "1", "1", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamDoseSpecificationPoint, "3", "3", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamDose, "1", "3", "ReferencedBeamSequence");
+ getAndCheckElementFromDataset(item, BeamDoseType, "1", "1C", "ReferencedBeamSequence");
+ getAndCheckElementFromDataset(item, AlternateBeamDose, "1", "3", "ReferencedBeamSequence");
+ getAndCheckElementFromDataset(item, AlternateBeamDoseType, "1", "1C", "ReferencedBeamSequence");
BeamDoseVerificationControlPointSequence.read(item, "1-n", "3", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamMeterset, "1", "3", "ReferencedBeamSequence");
getAndCheckElementFromDataset(item, BeamDeliveryDurationLimit, "1", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(ReferencedBeamNumber), "1", "1", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(BeamDoseSpecificationPoint), "3", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(BeamDose), "1", "3", "ReferencedBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(BeamDoseType), "1", "1C", "ReferencedBeamSequence");
+ addElementToDataset(result, item, new DcmDecimalString(AlternateBeamDose), "1", "3", "ReferencedBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(AlternateBeamDoseType), "1", "1C", "ReferencedBeamSequence");
if (result.good()) result = BeamDoseVerificationControlPointSequence.write(item, "1-n", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(BeamMeterset), "1", "3", "ReferencedBeamSequence");
addElementToDataset(result, item, new DcmFloatingPointDouble(BeamDeliveryDurationLimit), "1", "3", "ReferencedBeamSequence");
}
+OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::getAlternateBeamDose(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(AlternateBeamDose, value, pos);
+}
+
+
+OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::getAlternateBeamDose(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmDecimalString &, AlternateBeamDose).getFloat64(value, pos);
+}
+
+
+OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::getAlternateBeamDoseType(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(AlternateBeamDoseType, value, pos);
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::getBeamDeliveryDurationLimit(Float64 &value, const unsigned long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::getBeamDoseType(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(BeamDoseType, value, pos);
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::getBeamMeterset(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::setAlternateBeamDose(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = AlternateBeamDose.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::setAlternateBeamDoseType(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = AlternateBeamDoseType.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::setBeamDeliveryDurationLimit(const Float64 value, const unsigned long pos)
{
if (EmptyDefaultItem)
}
+OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::setBeamDoseType(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = BeamDoseType.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTReferencedBeamSequenceInRTFractionSchemeModule::Item::setBeamMeterset(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedCalculatedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRecordedCompensatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedControlPointSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTROIContourSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRTDoseROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedDoseReferenceSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedDoseReferenceSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedDoseReferenceSequenceInRTFractionSchemeModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedDoseSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTROIElementalCompositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedFractionGroupSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedFrameOfReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRTROIIdentificationCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
+ SegmentedPropertyTypeModifierCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
URNCodeValue(DCM_URNCodeValue)
{
}
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
+ SegmentedPropertyTypeModifierCodeSequence(copy.SegmentedPropertyTypeModifierCodeSequence),
URNCodeValue(copy.URNCodeValue)
{
}
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
+ SegmentedPropertyTypeModifierCodeSequence = copy.SegmentedPropertyTypeModifierCodeSequence;
URNCodeValue = copy.URNCodeValue;
}
return *this;
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextGroupExtensionCreatorUID.clear();
+ SegmentedPropertyTypeModifierCodeSequence.clear();
}
}
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
- ContextGroupExtensionCreatorUID.isEmpty();
+ ContextGroupExtensionCreatorUID.isEmpty() &&
+ SegmentedPropertyTypeModifierCodeSequence.isEmpty();
}
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "RTROIIdentificationCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "RTROIIdentificationCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "RTROIIdentificationCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "RTROIIdentificationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "RTROIIdentificationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "RTROIIdentificationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "RTROIIdentificationCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionCreatorUID, "1", "1C", "RTROIIdentificationCodeSequence");
+ SegmentedPropertyTypeModifierCodeSequence.read(item, "1-n", "3", "RTROIIdentificationCodeSequence");
result = EC_Normal;
}
return result;
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "RTROIIdentificationCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "RTROIIdentificationCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "RTROIIdentificationCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "RTROIIdentificationCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "RTROIIdentificationCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "RTROIIdentificationCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "RTROIIdentificationCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextGroupExtensionCreatorUID), "1", "1C", "RTROIIdentificationCodeSequence");
+ if (result.good()) result = SegmentedPropertyTypeModifierCodeSequence.write(item, "1-n", "3", "RTROIIdentificationCodeSequence");
}
return result;
}
}
+OFCondition DRTRTROIIdentificationCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTRTROIIdentificationCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTRTROIIdentificationCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTRTROIIdentificationCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedInstanceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRecordedLateralSpreadingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedMeasuredDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRangeModulatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRangeModulatorSettingsSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRequestedProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "RequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "RequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "RequestedProcedureCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "RequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "RequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "RequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "RequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "RequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "RequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "RequestedProcedureCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "RequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "RequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "RequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "RequestedProcedureCodeSequence");
}
+OFCondition DRTRequestedProcedureCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTRequestedProcedureCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTRequestedProcedureCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTRequestedProcedureCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferringPhysicianIdentificationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReasonForPerformedProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ReasonForPerformedProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ReasonForPerformedProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ReasonForPerformedProcedureCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ReasonForPerformedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ReasonForPerformedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ReasonForPerformedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ReasonForPerformedProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ReasonForPerformedProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ReasonForPerformedProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ReasonForPerformedProcedureCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ReasonForPerformedProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ReasonForPerformedProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ReasonForPerformedProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ReasonForPerformedProcedureCodeSequence");
}
+OFCondition DRTReasonForPerformedProcedureCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTReasonForPerformedProcedureCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTReasonForPerformedProcedureCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTReasonForPerformedProcedureCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedPatientPhotoSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTROIPhysicalPropertiesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedPerformedProcedureStepSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedPatientSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedReferenceImageSequenceInRTBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedReferenceImageSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedReferenceImageSequenceInRTBrachyApplicationSetupsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRecordedRangeModulatorSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRTROIObservationsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
DRTRTROIObservationsSequence::Item::Item(const OFBool emptyDefaultItem)
: EmptyDefaultItem(emptyDefaultItem),
- AdditionalRTROIIdentificationCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
MaterialID(DCM_MaterialID),
ObservationNumber(DCM_ObservationNumber),
ROIInterpreter(DCM_ROIInterpreter),
DRTRTROIObservationsSequence::Item::Item(const Item ©)
: EmptyDefaultItem(copy.EmptyDefaultItem),
- AdditionalRTROIIdentificationCodeSequence(copy.AdditionalRTROIIdentificationCodeSequence),
MaterialID(copy.MaterialID),
ObservationNumber(copy.ObservationNumber),
ROIInterpreter(copy.ROIInterpreter),
if (this != ©)
{
EmptyDefaultItem = copy.EmptyDefaultItem;
- AdditionalRTROIIdentificationCodeSequence = copy.AdditionalRTROIIdentificationCodeSequence;
MaterialID = copy.MaterialID;
ObservationNumber = copy.ObservationNumber;
ROIInterpreter = copy.ROIInterpreter;
RTRelatedROISequence.clear();
SegmentedPropertyCategoryCodeSequence.clear();
RTROIIdentificationCodeSequence.clear();
- AdditionalRTROIIdentificationCodeSequence.clear();
RelatedRTROIObservationsSequence.clear();
RTROIInterpretedType.clear();
ROIInterpreter.clear();
RTRelatedROISequence.isEmpty() &&
SegmentedPropertyCategoryCodeSequence.isEmpty() &&
RTROIIdentificationCodeSequence.isEmpty() &&
- AdditionalRTROIIdentificationCodeSequence.isEmpty() &&
RelatedRTROIObservationsSequence.isEmpty() &&
RTROIInterpretedType.isEmpty() &&
ROIInterpreter.isEmpty() &&
RTRelatedROISequence.read(item, "1-n", "3", "RTROIObservationsSequence");
SegmentedPropertyCategoryCodeSequence.read(item, "1-n", "3", "RTROIObservationsSequence");
RTROIIdentificationCodeSequence.read(item, "1-n", "3", "RTROIObservationsSequence");
- AdditionalRTROIIdentificationCodeSequence.read(item, "1-n", "3", "RTROIObservationsSequence");
RelatedRTROIObservationsSequence.read(item, "1-n", "3", "RTROIObservationsSequence");
getAndCheckElementFromDataset(item, RTROIInterpretedType, "1", "2", "RTROIObservationsSequence");
getAndCheckElementFromDataset(item, ROIInterpreter, "1", "2", "RTROIObservationsSequence");
if (result.good()) result = RTRelatedROISequence.write(item, "1-n", "3", "RTROIObservationsSequence");
if (result.good()) result = SegmentedPropertyCategoryCodeSequence.write(item, "1-n", "3", "RTROIObservationsSequence");
if (result.good()) result = RTROIIdentificationCodeSequence.write(item, "1-n", "3", "RTROIObservationsSequence");
- if (result.good()) result = AdditionalRTROIIdentificationCodeSequence.write(item, "1-n", "3", "RTROIObservationsSequence");
if (result.good()) result = RelatedRTROIObservationsSequence.write(item, "1-n", "3", "RTROIObservationsSequence");
addElementToDataset(result, item, new DcmCodeString(RTROIInterpretedType), "1", "2", "RTROIObservationsSequence");
addElementToDataset(result, item, new DcmPersonName(ROIInterpreter), "1", "2", "RTROIObservationsSequence");
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReasonForRequestedProcedureCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ReasonForRequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ReasonForRequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ReasonForRequestedProcedureCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ReasonForRequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ReasonForRequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ReasonForRequestedProcedureCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ReasonForRequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ReasonForRequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ReasonForRequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ReasonForRequestedProcedureCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ReasonForRequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ReasonForRequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ReasonForRequestedProcedureCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ReasonForRequestedProcedureCodeSequence");
}
+OFCondition DRTReasonForRequestedProcedureCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTReasonForRequestedProcedureCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTReasonForRequestedProcedureCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTReasonForRequestedProcedureCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRelatedRTROIObservationsSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRTRelatedROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRecordedRangeShifterSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedRTPlanSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedRTPlanSequenceInRTGeneralPlanModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedRTPlanSequenceInRTGeneralTreatmentRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedRTPlanSequenceInRTImageModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRequestingServiceCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "RequestingServiceCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "RequestingServiceCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "RequestingServiceCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "RequestingServiceCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "RequestingServiceCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "RequestingServiceCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "RequestingServiceCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "RequestingServiceCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "RequestingServiceCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "RequestingServiceCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "RequestingServiceCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "RequestingServiceCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "RequestingServiceCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "RequestingServiceCodeSequence");
}
+OFCondition DRTRequestingServiceCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTRequestingServiceCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTRequestingServiceCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTRequestingServiceCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedSeriesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRTReferencedSeriesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRangeShifterSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRangeShifterSettingsSequenceInRTIonBeamsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedSetupImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRecordedSnoutSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedSOPSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedSpatialRegistrationSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedStudySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedStructureSetSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRTReferencedStudySequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedTreatmentRecordSequenceInRTDoseModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedTreatmentRecordSequenceInRTGeneralTreatmentRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTReferencedVerificationImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRecordedWedgeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTRealWorldValueMappingSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
DRTRealWorldValueMappingSequence::Item::Item(const OFBool emptyDefaultItem)
: EmptyDefaultItem(emptyDefaultItem),
+ DoubleFloatRealWorldValueFirstValueMapped(DCM_DoubleFloatRealWorldValueFirstValueMapped),
+ DoubleFloatRealWorldValueLastValueMapped(DCM_DoubleFloatRealWorldValueLastValueMapped),
LUTExplanation(DCM_LUTExplanation),
LUTLabel(DCM_LUTLabel),
MeasurementUnitsCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
DRTRealWorldValueMappingSequence::Item::Item(const Item ©)
: EmptyDefaultItem(copy.EmptyDefaultItem),
+ DoubleFloatRealWorldValueFirstValueMapped(copy.DoubleFloatRealWorldValueFirstValueMapped),
+ DoubleFloatRealWorldValueLastValueMapped(copy.DoubleFloatRealWorldValueLastValueMapped),
LUTExplanation(copy.LUTExplanation),
LUTLabel(copy.LUTLabel),
MeasurementUnitsCodeSequence(copy.MeasurementUnitsCodeSequence),
if (this != ©)
{
EmptyDefaultItem = copy.EmptyDefaultItem;
+ DoubleFloatRealWorldValueFirstValueMapped = copy.DoubleFloatRealWorldValueFirstValueMapped;
+ DoubleFloatRealWorldValueLastValueMapped = copy.DoubleFloatRealWorldValueLastValueMapped;
LUTExplanation = copy.LUTExplanation;
LUTLabel = copy.LUTLabel;
MeasurementUnitsCodeSequence = copy.MeasurementUnitsCodeSequence;
/* clear all DICOM attributes */
RealWorldValueFirstValueMapped.clear();
RealWorldValueLastValueMapped.clear();
+ DoubleFloatRealWorldValueFirstValueMapped.clear();
+ DoubleFloatRealWorldValueLastValueMapped.clear();
RealWorldValueIntercept.clear();
RealWorldValueSlope.clear();
RealWorldValueLUTData.clear();
{
return RealWorldValueFirstValueMapped.isEmpty() &&
RealWorldValueLastValueMapped.isEmpty() &&
+ DoubleFloatRealWorldValueFirstValueMapped.isEmpty() &&
+ DoubleFloatRealWorldValueLastValueMapped.isEmpty() &&
RealWorldValueIntercept.isEmpty() &&
RealWorldValueSlope.isEmpty() &&
RealWorldValueLUTData.isEmpty() &&
{
/* re-initialize object */
clear();
- getAndCheckElementFromDataset(item, RealWorldValueFirstValueMapped, "1", "1", "RealWorldValueMappingSequence");
- getAndCheckElementFromDataset(item, RealWorldValueLastValueMapped, "1", "1", "RealWorldValueMappingSequence");
+ getAndCheckElementFromDataset(item, RealWorldValueFirstValueMapped, "1", "1C", "RealWorldValueMappingSequence");
+ getAndCheckElementFromDataset(item, RealWorldValueLastValueMapped, "1", "1C", "RealWorldValueMappingSequence");
+ getAndCheckElementFromDataset(item, DoubleFloatRealWorldValueFirstValueMapped, "1", "1C", "RealWorldValueMappingSequence");
+ getAndCheckElementFromDataset(item, DoubleFloatRealWorldValueLastValueMapped, "1", "1C", "RealWorldValueMappingSequence");
getAndCheckElementFromDataset(item, RealWorldValueIntercept, "1", "1C", "RealWorldValueMappingSequence");
getAndCheckElementFromDataset(item, RealWorldValueSlope, "1", "1C", "RealWorldValueMappingSequence");
getAndCheckElementFromDataset(item, RealWorldValueLUTData, "1-n", "1C", "RealWorldValueMappingSequence");
if (!EmptyDefaultItem)
{
result = EC_Normal;
- addElementToDataset(result, item, new DcmUnsignedShort(RealWorldValueFirstValueMapped), "1", "1", "RealWorldValueMappingSequence");
- addElementToDataset(result, item, new DcmUnsignedShort(RealWorldValueLastValueMapped), "1", "1", "RealWorldValueMappingSequence");
+ addElementToDataset(result, item, new DcmUnsignedShort(RealWorldValueFirstValueMapped), "1", "1C", "RealWorldValueMappingSequence");
+ addElementToDataset(result, item, new DcmUnsignedShort(RealWorldValueLastValueMapped), "1", "1C", "RealWorldValueMappingSequence");
+ addElementToDataset(result, item, new DcmFloatingPointDouble(DoubleFloatRealWorldValueFirstValueMapped), "1", "1C", "RealWorldValueMappingSequence");
+ addElementToDataset(result, item, new DcmFloatingPointDouble(DoubleFloatRealWorldValueLastValueMapped), "1", "1C", "RealWorldValueMappingSequence");
addElementToDataset(result, item, new DcmFloatingPointDouble(RealWorldValueIntercept), "1", "1C", "RealWorldValueMappingSequence");
addElementToDataset(result, item, new DcmFloatingPointDouble(RealWorldValueSlope), "1", "1C", "RealWorldValueMappingSequence");
addElementToDataset(result, item, new DcmFloatingPointDouble(RealWorldValueLUTData), "1-n", "1C", "RealWorldValueMappingSequence");
}
+OFCondition DRTRealWorldValueMappingSequence::Item::getDoubleFloatRealWorldValueFirstValueMapped(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointDouble &, DoubleFloatRealWorldValueFirstValueMapped).getFloat64(value, pos);
+}
+
+
+OFCondition DRTRealWorldValueMappingSequence::Item::getDoubleFloatRealWorldValueLastValueMapped(Float64 &value, const unsigned long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return OFconst_cast(DcmFloatingPointDouble &, DoubleFloatRealWorldValueLastValueMapped).getFloat64(value, pos);
+}
+
+
OFCondition DRTRealWorldValueMappingSequence::Item::getLUTExplanation(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTRealWorldValueMappingSequence::Item::setDoubleFloatRealWorldValueFirstValueMapped(const Float64 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DoubleFloatRealWorldValueFirstValueMapped.putFloat64(value, pos);
+}
+
+
+OFCondition DRTRealWorldValueMappingSequence::Item::setDoubleFloatRealWorldValueLastValueMapped(const Float64 value, const unsigned long pos)
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return DoubleFloatRealWorldValueLastValueMapped.putFloat64(value, pos);
+}
+
+
OFCondition DRTRealWorldValueMappingSequence::Item::setLUTExplanation(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTStudiesContainingOtherReferencedInstancesSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTStrainCodeSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtscs.h"
+
+
+// --- item class ---
+
+DRTStrainCodeSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ CodeMeaning(DCM_CodeMeaning),
+ CodeValue(DCM_CodeValue),
+ CodingSchemeDesignator(DCM_CodingSchemeDesignator),
+ CodingSchemeVersion(DCM_CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(DCM_ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(DCM_ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(DCM_ContextGroupLocalVersion),
+ ContextGroupVersion(DCM_ContextGroupVersion),
+ ContextIdentifier(DCM_ContextIdentifier),
+ ContextUID(DCM_ContextUID),
+ EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ LongCodeValue(DCM_LongCodeValue),
+ MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
+ MappingResourceUID(DCM_MappingResourceUID),
+ URNCodeValue(DCM_URNCodeValue)
+{
+}
+
+
+DRTStrainCodeSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ CodeMeaning(copy.CodeMeaning),
+ CodeValue(copy.CodeValue),
+ CodingSchemeDesignator(copy.CodingSchemeDesignator),
+ CodingSchemeVersion(copy.CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(copy.ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(copy.ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(copy.ContextGroupLocalVersion),
+ ContextGroupVersion(copy.ContextGroupVersion),
+ ContextIdentifier(copy.ContextIdentifier),
+ ContextUID(copy.ContextUID),
+ EquivalentCodeSequence(copy.EquivalentCodeSequence),
+ LongCodeValue(copy.LongCodeValue),
+ MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
+ MappingResourceUID(copy.MappingResourceUID),
+ URNCodeValue(copy.URNCodeValue)
+{
+}
+
+
+DRTStrainCodeSequence::Item::~Item()
+{
+}
+
+
+DRTStrainCodeSequence::Item &DRTStrainCodeSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ CodeMeaning = copy.CodeMeaning;
+ CodeValue = copy.CodeValue;
+ CodingSchemeDesignator = copy.CodingSchemeDesignator;
+ CodingSchemeVersion = copy.CodingSchemeVersion;
+ ContextGroupExtensionCreatorUID = copy.ContextGroupExtensionCreatorUID;
+ ContextGroupExtensionFlag = copy.ContextGroupExtensionFlag;
+ ContextGroupLocalVersion = copy.ContextGroupLocalVersion;
+ ContextGroupVersion = copy.ContextGroupVersion;
+ ContextIdentifier = copy.ContextIdentifier;
+ ContextUID = copy.ContextUID;
+ EquivalentCodeSequence = copy.EquivalentCodeSequence;
+ LongCodeValue = copy.LongCodeValue;
+ MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
+ MappingResourceUID = copy.MappingResourceUID;
+ URNCodeValue = copy.URNCodeValue;
+ }
+ return *this;
+}
+
+
+void DRTStrainCodeSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ CodeValue.clear();
+ CodingSchemeDesignator.clear();
+ CodingSchemeVersion.clear();
+ CodeMeaning.clear();
+ LongCodeValue.clear();
+ URNCodeValue.clear();
+ EquivalentCodeSequence.clear();
+ ContextIdentifier.clear();
+ ContextUID.clear();
+ MappingResource.clear();
+ MappingResourceUID.clear();
+ MappingResourceName.clear();
+ ContextGroupVersion.clear();
+ ContextGroupExtensionFlag.clear();
+ ContextGroupLocalVersion.clear();
+ ContextGroupExtensionCreatorUID.clear();
+ }
+}
+
+
+OFBool DRTStrainCodeSequence::Item::isEmpty()
+{
+ return CodeValue.isEmpty() &&
+ CodingSchemeDesignator.isEmpty() &&
+ CodingSchemeVersion.isEmpty() &&
+ CodeMeaning.isEmpty() &&
+ LongCodeValue.isEmpty() &&
+ URNCodeValue.isEmpty() &&
+ EquivalentCodeSequence.isEmpty() &&
+ ContextIdentifier.isEmpty() &&
+ ContextUID.isEmpty() &&
+ MappingResource.isEmpty() &&
+ MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
+ ContextGroupVersion.isEmpty() &&
+ ContextGroupExtensionFlag.isEmpty() &&
+ ContextGroupLocalVersion.isEmpty() &&
+ ContextGroupExtensionCreatorUID.isEmpty();
+}
+
+
+OFBool DRTStrainCodeSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, CodeValue, "1", "1C", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, CodingSchemeDesignator, "1", "1C", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, CodingSchemeVersion, "1", "1C", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, CodeMeaning, "1", "1", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, LongCodeValue, "1", "1C", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, URNCodeValue, "1", "1C", "StrainCodeSequence");
+ EquivalentCodeSequence.read(item, "1-n", "3", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, ContextIdentifier, "1", "3", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, ContextUID, "1", "3", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "StrainCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionCreatorUID, "1", "1C", "StrainCodeSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmShortString(CodeValue), "1", "1C", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmShortString(CodingSchemeDesignator), "1", "1C", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmShortString(CodingSchemeVersion), "1", "1C", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(CodeMeaning), "1", "1", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmUnlimitedCharacters(LongCodeValue), "1", "1C", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmUniversalResourceIdentifierOrLocator(URNCodeValue), "1", "1C", "StrainCodeSequence");
+ if (result.good()) result = EquivalentCodeSequence.write(item, "1-n", "3", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextIdentifier), "1", "3", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "StrainCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextGroupExtensionCreatorUID), "1", "1C", "StrainCodeSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getCodeMeaning(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodeMeaning, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodeValue, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getCodingSchemeDesignator(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodingSchemeDesignator, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getCodingSchemeVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodingSchemeVersion, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getContextGroupExtensionCreatorUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionCreatorUID, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getContextGroupExtensionFlag(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionFlag, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getContextGroupLocalVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupLocalVersion, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getContextGroupVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupVersion, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getContextIdentifier(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextIdentifier, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getContextUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextUID, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getLongCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(LongCodeValue, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getMappingResource(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResource, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceUID, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::getURNCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(URNCodeValue, value, pos);
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setCodeMeaning(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodeMeaning.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setCodingSchemeDesignator(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodingSchemeDesignator.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setCodingSchemeVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodingSchemeVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionCreatorUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setContextGroupExtensionFlag(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionFlag.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setContextGroupLocalVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupLocalVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setContextGroupVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setContextIdentifier(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextIdentifier.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setContextUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setLongCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LongCodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setMappingResource(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResource.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::Item::setURNCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniversalResourceIdentifierOrLocator::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = URNCodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTStrainCodeSequence::DRTStrainCodeSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTStrainCodeSequence::DRTStrainCodeSequence(const DRTStrainCodeSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTStrainCodeSequence &DRTStrainCodeSequence::operator=(const DRTStrainCodeSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTStrainCodeSequence::~DRTStrainCodeSequence()
+{
+ clear();
+}
+
+
+void DRTStrainCodeSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTStrainCodeSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTStrainCodeSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTStrainCodeSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTStrainCodeSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTStrainCodeSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTStrainCodeSequence::Item &DRTStrainCodeSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTStrainCodeSequence::Item &DRTStrainCodeSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTStrainCodeSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTStrainCodeSequence::Item &DRTStrainCodeSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTStrainCodeSequence::Item &DRTStrainCodeSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTStrainCodeSequence::Item &DRTStrainCodeSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTStrainCodeSequence::Item &DRTStrainCodeSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTStrainCodeSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_StrainCodeSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_StrainCodeSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainCodeSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_StrainCodeSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTSeriesDescriptionCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "SeriesDescriptionCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "SeriesDescriptionCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "SeriesDescriptionCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "SeriesDescriptionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "SeriesDescriptionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "SeriesDescriptionCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "SeriesDescriptionCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "SeriesDescriptionCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "SeriesDescriptionCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "SeriesDescriptionCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "SeriesDescriptionCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "SeriesDescriptionCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "SeriesDescriptionCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "SeriesDescriptionCodeSequence");
}
+OFCondition DRTSeriesDescriptionCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTSeriesDescriptionCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTSeriesDescriptionCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTSeriesDescriptionCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTSetupDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTShieldingDeviceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTSourceInstanceSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtsins.h"
+
+
+// --- item class ---
+
+DRTSourceInstanceSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ PurposeOfReferenceCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ ReferencedSOPClassUID(DCM_ReferencedSOPClassUID),
+ ReferencedSOPInstanceUID(DCM_ReferencedSOPInstanceUID)
+{
+}
+
+
+DRTSourceInstanceSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ PurposeOfReferenceCodeSequence(copy.PurposeOfReferenceCodeSequence),
+ ReferencedSOPClassUID(copy.ReferencedSOPClassUID),
+ ReferencedSOPInstanceUID(copy.ReferencedSOPInstanceUID)
+{
+}
+
+
+DRTSourceInstanceSequence::Item::~Item()
+{
+}
+
+
+DRTSourceInstanceSequence::Item &DRTSourceInstanceSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ PurposeOfReferenceCodeSequence = copy.PurposeOfReferenceCodeSequence;
+ ReferencedSOPClassUID = copy.ReferencedSOPClassUID;
+ ReferencedSOPInstanceUID = copy.ReferencedSOPInstanceUID;
+ }
+ return *this;
+}
+
+
+void DRTSourceInstanceSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ ReferencedSOPClassUID.clear();
+ ReferencedSOPInstanceUID.clear();
+ PurposeOfReferenceCodeSequence.clear();
+ }
+}
+
+
+OFBool DRTSourceInstanceSequence::Item::isEmpty()
+{
+ return ReferencedSOPClassUID.isEmpty() &&
+ ReferencedSOPInstanceUID.isEmpty() &&
+ PurposeOfReferenceCodeSequence.isEmpty();
+}
+
+
+OFBool DRTSourceInstanceSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTSourceInstanceSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, ReferencedSOPClassUID, "1", "1", "SourceInstanceSequence");
+ getAndCheckElementFromDataset(item, ReferencedSOPInstanceUID, "1", "1", "SourceInstanceSequence");
+ PurposeOfReferenceCodeSequence.read(item, "1-n", "3", "SourceInstanceSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ReferencedSOPClassUID), "1", "1", "SourceInstanceSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ReferencedSOPInstanceUID), "1", "1", "SourceInstanceSequence");
+ if (result.good()) result = PurposeOfReferenceCodeSequence.write(item, "1-n", "3", "SourceInstanceSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::Item::getReferencedSOPClassUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ReferencedSOPClassUID, value, pos);
+}
+
+
+OFCondition DRTSourceInstanceSequence::Item::getReferencedSOPInstanceUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ReferencedSOPInstanceUID, value, pos);
+}
+
+
+OFCondition DRTSourceInstanceSequence::Item::setReferencedSOPClassUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ReferencedSOPClassUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::Item::setReferencedSOPInstanceUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ReferencedSOPInstanceUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTSourceInstanceSequence::DRTSourceInstanceSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTSourceInstanceSequence::DRTSourceInstanceSequence(const DRTSourceInstanceSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTSourceInstanceSequence &DRTSourceInstanceSequence::operator=(const DRTSourceInstanceSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTSourceInstanceSequence::~DRTSourceInstanceSequence()
+{
+ clear();
+}
+
+
+void DRTSourceInstanceSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTSourceInstanceSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTSourceInstanceSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTSourceInstanceSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTSourceInstanceSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTSourceInstanceSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTSourceInstanceSequence::Item &DRTSourceInstanceSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTSourceInstanceSequence::Item &DRTSourceInstanceSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTSourceInstanceSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTSourceInstanceSequence::Item &DRTSourceInstanceSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTSourceInstanceSequence::Item &DRTSourceInstanceSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTSourceInstanceSequence::Item &DRTSourceInstanceSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTSourceInstanceSequence::Item &DRTSourceInstanceSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTSourceInstanceSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_SourceInstanceSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_SourceInstanceSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTSourceInstanceSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_SourceInstanceSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTSourceImageSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTSnoutSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTSegmentedPropertyCategoryCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
URNCodeValue(DCM_URNCodeValue)
{
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
URNCodeValue(copy.URNCodeValue)
{
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
URNCodeValue = copy.URNCodeValue;
}
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "SegmentedPropertyCategoryCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "SegmentedPropertyCategoryCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "SegmentedPropertyCategoryCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "SegmentedPropertyCategoryCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "SegmentedPropertyCategoryCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "SegmentedPropertyCategoryCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "SegmentedPropertyCategoryCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "SegmentedPropertyCategoryCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "SegmentedPropertyCategoryCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "SegmentedPropertyCategoryCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "SegmentedPropertyCategoryCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "SegmentedPropertyCategoryCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "SegmentedPropertyCategoryCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "SegmentedPropertyCategoryCodeSequence");
}
+OFCondition DRTSegmentedPropertyCategoryCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTSegmentedPropertyCategoryCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTSegmentedPropertyCategoryCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTSegmentedPropertyCategoryCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTScheduledProtocolCodeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
LongCodeValue(DCM_LongCodeValue),
MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
MappingResourceUID(DCM_MappingResourceUID),
ProtocolContextSequence(emptyDefaultItem /*emptyDefaultSequence*/),
URNCodeValue(DCM_URNCodeValue)
EquivalentCodeSequence(copy.EquivalentCodeSequence),
LongCodeValue(copy.LongCodeValue),
MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
MappingResourceUID(copy.MappingResourceUID),
ProtocolContextSequence(copy.ProtocolContextSequence),
URNCodeValue(copy.URNCodeValue)
EquivalentCodeSequence = copy.EquivalentCodeSequence;
LongCodeValue = copy.LongCodeValue;
MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
MappingResourceUID = copy.MappingResourceUID;
ProtocolContextSequence = copy.ProtocolContextSequence;
URNCodeValue = copy.URNCodeValue;
ContextUID.clear();
MappingResource.clear();
MappingResourceUID.clear();
+ MappingResourceName.clear();
ContextGroupVersion.clear();
ContextGroupExtensionFlag.clear();
ContextGroupLocalVersion.clear();
ContextUID.isEmpty() &&
MappingResource.isEmpty() &&
MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
ContextGroupVersion.isEmpty() &&
ContextGroupExtensionFlag.isEmpty() &&
ContextGroupLocalVersion.isEmpty() &&
getAndCheckElementFromDataset(item, ContextUID, "1", "3", "ScheduledProtocolCodeSequence");
getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "ScheduledProtocolCodeSequence");
getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "ScheduledProtocolCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "ScheduledProtocolCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "ScheduledProtocolCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "ScheduledProtocolCodeSequence");
getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "ScheduledProtocolCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "ScheduledProtocolCodeSequence");
addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "ScheduledProtocolCodeSequence");
addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "ScheduledProtocolCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "ScheduledProtocolCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "ScheduledProtocolCodeSequence");
addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "ScheduledProtocolCodeSequence");
addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "ScheduledProtocolCodeSequence");
}
+OFCondition DRTScheduledProtocolCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
OFCondition DRTScheduledProtocolCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTScheduledProtocolCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTScheduledProtocolCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTSourcePatientGroupIdentificationSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtspgis.h"
+
+
+// --- item class ---
+
+DRTSourcePatientGroupIdentificationSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ IssuerOfPatientID(DCM_IssuerOfPatientID),
+ IssuerOfPatientIDQualifiersSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ PatientID(DCM_PatientID)
+{
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ IssuerOfPatientID(copy.IssuerOfPatientID),
+ IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
+ PatientID(copy.PatientID)
+{
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::Item::~Item()
+{
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::Item &DRTSourcePatientGroupIdentificationSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ IssuerOfPatientID = copy.IssuerOfPatientID;
+ IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
+ PatientID = copy.PatientID;
+ }
+ return *this;
+}
+
+
+void DRTSourcePatientGroupIdentificationSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ PatientID.clear();
+ IssuerOfPatientID.clear();
+ IssuerOfPatientIDQualifiersSequence.clear();
+ }
+}
+
+
+OFBool DRTSourcePatientGroupIdentificationSequence::Item::isEmpty()
+{
+ return PatientID.isEmpty() &&
+ IssuerOfPatientID.isEmpty() &&
+ IssuerOfPatientIDQualifiersSequence.isEmpty();
+}
+
+
+OFBool DRTSourcePatientGroupIdentificationSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, PatientID, "1", "1", "SourcePatientGroupIdentificationSequence");
+ getAndCheckElementFromDataset(item, IssuerOfPatientID, "1", "3", "SourcePatientGroupIdentificationSequence");
+ IssuerOfPatientIDQualifiersSequence.read(item, "1-n", "3", "SourcePatientGroupIdentificationSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmLongString(PatientID), "1", "1", "SourcePatientGroupIdentificationSequence");
+ addElementToDataset(result, item, new DcmLongString(IssuerOfPatientID), "1", "3", "SourcePatientGroupIdentificationSequence");
+ if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(item, "1-n", "3", "SourcePatientGroupIdentificationSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::Item::getIssuerOfPatientID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(IssuerOfPatientID, value, pos);
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::Item::getPatientID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(PatientID, value, pos);
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::Item::setIssuerOfPatientID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = IssuerOfPatientID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::Item::setPatientID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTSourcePatientGroupIdentificationSequence::DRTSourcePatientGroupIdentificationSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::DRTSourcePatientGroupIdentificationSequence(const DRTSourcePatientGroupIdentificationSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTSourcePatientGroupIdentificationSequence &DRTSourcePatientGroupIdentificationSequence::operator=(const DRTSourcePatientGroupIdentificationSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::~DRTSourcePatientGroupIdentificationSequence()
+{
+ clear();
+}
+
+
+void DRTSourcePatientGroupIdentificationSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTSourcePatientGroupIdentificationSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTSourcePatientGroupIdentificationSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTSourcePatientGroupIdentificationSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::Item &DRTSourcePatientGroupIdentificationSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTSourcePatientGroupIdentificationSequence::Item &DRTSourcePatientGroupIdentificationSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::Item &DRTSourcePatientGroupIdentificationSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTSourcePatientGroupIdentificationSequence::Item &DRTSourcePatientGroupIdentificationSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTSourcePatientGroupIdentificationSequence::Item &DRTSourcePatientGroupIdentificationSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTSourcePatientGroupIdentificationSequence::Item &DRTSourcePatientGroupIdentificationSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_SourcePatientGroupIdentificationSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_SourcePatientGroupIdentificationSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTSourcePatientGroupIdentificationSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_SourcePatientGroupIdentificationSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTSegmentedPropertyTypeModifierCodeSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtsptcs.h"
+
+
+// --- item class ---
+
+DRTSegmentedPropertyTypeModifierCodeSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ CodeMeaning(DCM_CodeMeaning),
+ CodeValue(DCM_CodeValue),
+ CodingSchemeDesignator(DCM_CodingSchemeDesignator),
+ CodingSchemeVersion(DCM_CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(DCM_ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(DCM_ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(DCM_ContextGroupLocalVersion),
+ ContextGroupVersion(DCM_ContextGroupVersion),
+ ContextIdentifier(DCM_ContextIdentifier),
+ ContextUID(DCM_ContextUID),
+ EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ LongCodeValue(DCM_LongCodeValue),
+ MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
+ MappingResourceUID(DCM_MappingResourceUID),
+ URNCodeValue(DCM_URNCodeValue)
+{
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ CodeMeaning(copy.CodeMeaning),
+ CodeValue(copy.CodeValue),
+ CodingSchemeDesignator(copy.CodingSchemeDesignator),
+ CodingSchemeVersion(copy.CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(copy.ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(copy.ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(copy.ContextGroupLocalVersion),
+ ContextGroupVersion(copy.ContextGroupVersion),
+ ContextIdentifier(copy.ContextIdentifier),
+ ContextUID(copy.ContextUID),
+ EquivalentCodeSequence(copy.EquivalentCodeSequence),
+ LongCodeValue(copy.LongCodeValue),
+ MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
+ MappingResourceUID(copy.MappingResourceUID),
+ URNCodeValue(copy.URNCodeValue)
+{
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::Item::~Item()
+{
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::Item &DRTSegmentedPropertyTypeModifierCodeSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ CodeMeaning = copy.CodeMeaning;
+ CodeValue = copy.CodeValue;
+ CodingSchemeDesignator = copy.CodingSchemeDesignator;
+ CodingSchemeVersion = copy.CodingSchemeVersion;
+ ContextGroupExtensionCreatorUID = copy.ContextGroupExtensionCreatorUID;
+ ContextGroupExtensionFlag = copy.ContextGroupExtensionFlag;
+ ContextGroupLocalVersion = copy.ContextGroupLocalVersion;
+ ContextGroupVersion = copy.ContextGroupVersion;
+ ContextIdentifier = copy.ContextIdentifier;
+ ContextUID = copy.ContextUID;
+ EquivalentCodeSequence = copy.EquivalentCodeSequence;
+ LongCodeValue = copy.LongCodeValue;
+ MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
+ MappingResourceUID = copy.MappingResourceUID;
+ URNCodeValue = copy.URNCodeValue;
+ }
+ return *this;
+}
+
+
+void DRTSegmentedPropertyTypeModifierCodeSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ CodeValue.clear();
+ CodingSchemeDesignator.clear();
+ CodingSchemeVersion.clear();
+ CodeMeaning.clear();
+ LongCodeValue.clear();
+ URNCodeValue.clear();
+ EquivalentCodeSequence.clear();
+ ContextIdentifier.clear();
+ ContextUID.clear();
+ MappingResource.clear();
+ MappingResourceUID.clear();
+ MappingResourceName.clear();
+ ContextGroupVersion.clear();
+ ContextGroupExtensionFlag.clear();
+ ContextGroupLocalVersion.clear();
+ ContextGroupExtensionCreatorUID.clear();
+ }
+}
+
+
+OFBool DRTSegmentedPropertyTypeModifierCodeSequence::Item::isEmpty()
+{
+ return CodeValue.isEmpty() &&
+ CodingSchemeDesignator.isEmpty() &&
+ CodingSchemeVersion.isEmpty() &&
+ CodeMeaning.isEmpty() &&
+ LongCodeValue.isEmpty() &&
+ URNCodeValue.isEmpty() &&
+ EquivalentCodeSequence.isEmpty() &&
+ ContextIdentifier.isEmpty() &&
+ ContextUID.isEmpty() &&
+ MappingResource.isEmpty() &&
+ MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
+ ContextGroupVersion.isEmpty() &&
+ ContextGroupExtensionFlag.isEmpty() &&
+ ContextGroupLocalVersion.isEmpty() &&
+ ContextGroupExtensionCreatorUID.isEmpty();
+}
+
+
+OFBool DRTSegmentedPropertyTypeModifierCodeSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, CodeValue, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, CodingSchemeDesignator, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, CodingSchemeVersion, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, CodeMeaning, "1", "1", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, LongCodeValue, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, URNCodeValue, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ EquivalentCodeSequence.read(item, "1-n", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, ContextIdentifier, "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, ContextUID, "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionCreatorUID, "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmShortString(CodeValue), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmShortString(CodingSchemeDesignator), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmShortString(CodingSchemeVersion), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(CodeMeaning), "1", "1", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmUnlimitedCharacters(LongCodeValue), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmUniversalResourceIdentifierOrLocator(URNCodeValue), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ if (result.good()) result = EquivalentCodeSequence.write(item, "1-n", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextIdentifier), "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextGroupExtensionCreatorUID), "1", "1C", "SegmentedPropertyTypeModifierCodeSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getCodeMeaning(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodeMeaning, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodeValue, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getCodingSchemeDesignator(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodingSchemeDesignator, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getCodingSchemeVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodingSchemeVersion, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getContextGroupExtensionCreatorUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionCreatorUID, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getContextGroupExtensionFlag(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionFlag, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getContextGroupLocalVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupLocalVersion, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getContextGroupVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupVersion, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getContextIdentifier(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextIdentifier, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getContextUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextUID, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getLongCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(LongCodeValue, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getMappingResource(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResource, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceUID, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::getURNCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(URNCodeValue, value, pos);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setCodeMeaning(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodeMeaning.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setCodingSchemeDesignator(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodingSchemeDesignator.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setCodingSchemeVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodingSchemeVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionCreatorUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setContextGroupExtensionFlag(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionFlag.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setContextGroupLocalVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupLocalVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setContextGroupVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setContextIdentifier(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextIdentifier.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setContextUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setLongCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LongCodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setMappingResource(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResource.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::Item::setURNCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniversalResourceIdentifierOrLocator::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = URNCodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTSegmentedPropertyTypeModifierCodeSequence::DRTSegmentedPropertyTypeModifierCodeSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::DRTSegmentedPropertyTypeModifierCodeSequence(const DRTSegmentedPropertyTypeModifierCodeSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence &DRTSegmentedPropertyTypeModifierCodeSequence::operator=(const DRTSegmentedPropertyTypeModifierCodeSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::~DRTSegmentedPropertyTypeModifierCodeSequence()
+{
+ clear();
+}
+
+
+void DRTSegmentedPropertyTypeModifierCodeSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTSegmentedPropertyTypeModifierCodeSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTSegmentedPropertyTypeModifierCodeSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTSegmentedPropertyTypeModifierCodeSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::Item &DRTSegmentedPropertyTypeModifierCodeSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTSegmentedPropertyTypeModifierCodeSequence::Item &DRTSegmentedPropertyTypeModifierCodeSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::Item &DRTSegmentedPropertyTypeModifierCodeSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTSegmentedPropertyTypeModifierCodeSequence::Item &DRTSegmentedPropertyTypeModifierCodeSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTSegmentedPropertyTypeModifierCodeSequence::Item &DRTSegmentedPropertyTypeModifierCodeSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTSegmentedPropertyTypeModifierCodeSequence::Item &DRTSegmentedPropertyTypeModifierCodeSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_SegmentedPropertyTypeModifierCodeSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_SegmentedPropertyTypeModifierCodeSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTSegmentedPropertyTypeModifierCodeSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_SegmentedPropertyTypeModifierCodeSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTSourceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTStrainSourceRegistryCodeSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtssrcs.h"
+
+
+// --- item class ---
+
+DRTStrainSourceRegistryCodeSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ CodeMeaning(DCM_CodeMeaning),
+ CodeValue(DCM_CodeValue),
+ CodingSchemeDesignator(DCM_CodingSchemeDesignator),
+ CodingSchemeVersion(DCM_CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(DCM_ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(DCM_ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(DCM_ContextGroupLocalVersion),
+ ContextGroupVersion(DCM_ContextGroupVersion),
+ ContextIdentifier(DCM_ContextIdentifier),
+ ContextUID(DCM_ContextUID),
+ EquivalentCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ LongCodeValue(DCM_LongCodeValue),
+ MappingResource(DCM_MappingResource),
+ MappingResourceName(DCM_MappingResourceName),
+ MappingResourceUID(DCM_MappingResourceUID),
+ URNCodeValue(DCM_URNCodeValue)
+{
+}
+
+
+DRTStrainSourceRegistryCodeSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ CodeMeaning(copy.CodeMeaning),
+ CodeValue(copy.CodeValue),
+ CodingSchemeDesignator(copy.CodingSchemeDesignator),
+ CodingSchemeVersion(copy.CodingSchemeVersion),
+ ContextGroupExtensionCreatorUID(copy.ContextGroupExtensionCreatorUID),
+ ContextGroupExtensionFlag(copy.ContextGroupExtensionFlag),
+ ContextGroupLocalVersion(copy.ContextGroupLocalVersion),
+ ContextGroupVersion(copy.ContextGroupVersion),
+ ContextIdentifier(copy.ContextIdentifier),
+ ContextUID(copy.ContextUID),
+ EquivalentCodeSequence(copy.EquivalentCodeSequence),
+ LongCodeValue(copy.LongCodeValue),
+ MappingResource(copy.MappingResource),
+ MappingResourceName(copy.MappingResourceName),
+ MappingResourceUID(copy.MappingResourceUID),
+ URNCodeValue(copy.URNCodeValue)
+{
+}
+
+
+DRTStrainSourceRegistryCodeSequence::Item::~Item()
+{
+}
+
+
+DRTStrainSourceRegistryCodeSequence::Item &DRTStrainSourceRegistryCodeSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ CodeMeaning = copy.CodeMeaning;
+ CodeValue = copy.CodeValue;
+ CodingSchemeDesignator = copy.CodingSchemeDesignator;
+ CodingSchemeVersion = copy.CodingSchemeVersion;
+ ContextGroupExtensionCreatorUID = copy.ContextGroupExtensionCreatorUID;
+ ContextGroupExtensionFlag = copy.ContextGroupExtensionFlag;
+ ContextGroupLocalVersion = copy.ContextGroupLocalVersion;
+ ContextGroupVersion = copy.ContextGroupVersion;
+ ContextIdentifier = copy.ContextIdentifier;
+ ContextUID = copy.ContextUID;
+ EquivalentCodeSequence = copy.EquivalentCodeSequence;
+ LongCodeValue = copy.LongCodeValue;
+ MappingResource = copy.MappingResource;
+ MappingResourceName = copy.MappingResourceName;
+ MappingResourceUID = copy.MappingResourceUID;
+ URNCodeValue = copy.URNCodeValue;
+ }
+ return *this;
+}
+
+
+void DRTStrainSourceRegistryCodeSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ CodeValue.clear();
+ CodingSchemeDesignator.clear();
+ CodingSchemeVersion.clear();
+ CodeMeaning.clear();
+ LongCodeValue.clear();
+ URNCodeValue.clear();
+ EquivalentCodeSequence.clear();
+ ContextIdentifier.clear();
+ ContextUID.clear();
+ MappingResource.clear();
+ MappingResourceUID.clear();
+ MappingResourceName.clear();
+ ContextGroupVersion.clear();
+ ContextGroupExtensionFlag.clear();
+ ContextGroupLocalVersion.clear();
+ ContextGroupExtensionCreatorUID.clear();
+ }
+}
+
+
+OFBool DRTStrainSourceRegistryCodeSequence::Item::isEmpty()
+{
+ return CodeValue.isEmpty() &&
+ CodingSchemeDesignator.isEmpty() &&
+ CodingSchemeVersion.isEmpty() &&
+ CodeMeaning.isEmpty() &&
+ LongCodeValue.isEmpty() &&
+ URNCodeValue.isEmpty() &&
+ EquivalentCodeSequence.isEmpty() &&
+ ContextIdentifier.isEmpty() &&
+ ContextUID.isEmpty() &&
+ MappingResource.isEmpty() &&
+ MappingResourceUID.isEmpty() &&
+ MappingResourceName.isEmpty() &&
+ ContextGroupVersion.isEmpty() &&
+ ContextGroupExtensionFlag.isEmpty() &&
+ ContextGroupLocalVersion.isEmpty() &&
+ ContextGroupExtensionCreatorUID.isEmpty();
+}
+
+
+OFBool DRTStrainSourceRegistryCodeSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, CodeValue, "1", "1C", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, CodingSchemeDesignator, "1", "1C", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, CodingSchemeVersion, "1", "1C", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, CodeMeaning, "1", "1", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, LongCodeValue, "1", "1C", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, URNCodeValue, "1", "1C", "StrainSourceRegistryCodeSequence");
+ EquivalentCodeSequence.read(item, "1-n", "3", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, ContextIdentifier, "1", "3", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, ContextUID, "1", "3", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResource, "1", "1C", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceUID, "1", "3", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, MappingResourceName, "1", "3", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupVersion, "1", "1C", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionFlag, "1", "3", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupLocalVersion, "1", "1C", "StrainSourceRegistryCodeSequence");
+ getAndCheckElementFromDataset(item, ContextGroupExtensionCreatorUID, "1", "1C", "StrainSourceRegistryCodeSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmShortString(CodeValue), "1", "1C", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmShortString(CodingSchemeDesignator), "1", "1C", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmShortString(CodingSchemeVersion), "1", "1C", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(CodeMeaning), "1", "1", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmUnlimitedCharacters(LongCodeValue), "1", "1C", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmUniversalResourceIdentifierOrLocator(URNCodeValue), "1", "1C", "StrainSourceRegistryCodeSequence");
+ if (result.good()) result = EquivalentCodeSequence.write(item, "1-n", "3", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextIdentifier), "1", "3", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextUID), "1", "3", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(MappingResource), "1", "1C", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(MappingResourceUID), "1", "3", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmLongString(MappingResourceName), "1", "3", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupVersion), "1", "1C", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmCodeString(ContextGroupExtensionFlag), "1", "3", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmDateTime(ContextGroupLocalVersion), "1", "1C", "StrainSourceRegistryCodeSequence");
+ addElementToDataset(result, item, new DcmUniqueIdentifier(ContextGroupExtensionCreatorUID), "1", "1C", "StrainSourceRegistryCodeSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getCodeMeaning(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodeMeaning, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodeValue, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getCodingSchemeDesignator(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodingSchemeDesignator, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getCodingSchemeVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(CodingSchemeVersion, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getContextGroupExtensionCreatorUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionCreatorUID, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getContextGroupExtensionFlag(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupExtensionFlag, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getContextGroupLocalVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupLocalVersion, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getContextGroupVersion(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextGroupVersion, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getContextIdentifier(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextIdentifier, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getContextUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ContextUID, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getLongCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(LongCodeValue, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getMappingResource(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResource, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getMappingResourceName(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceName, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getMappingResourceUID(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(MappingResourceUID, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::getURNCodeValue(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(URNCodeValue, value, pos);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setCodeMeaning(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodeMeaning.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setCodingSchemeDesignator(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodingSchemeDesignator.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setCodingSchemeVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmShortString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = CodingSchemeVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setContextGroupExtensionCreatorUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionCreatorUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setContextGroupExtensionFlag(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupExtensionFlag.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setContextGroupLocalVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupLocalVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setContextGroupVersion(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmDateTime::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextGroupVersion.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setContextIdentifier(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextIdentifier.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setContextUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ContextUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setLongCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LongCodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setMappingResource(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResource.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setMappingResourceName(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceName.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setMappingResourceUID(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniqueIdentifier::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MappingResourceUID.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::Item::setURNCodeValue(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUniversalResourceIdentifierOrLocator::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = URNCodeValue.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTStrainSourceRegistryCodeSequence::DRTStrainSourceRegistryCodeSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTStrainSourceRegistryCodeSequence::DRTStrainSourceRegistryCodeSequence(const DRTStrainSourceRegistryCodeSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTStrainSourceRegistryCodeSequence &DRTStrainSourceRegistryCodeSequence::operator=(const DRTStrainSourceRegistryCodeSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTStrainSourceRegistryCodeSequence::~DRTStrainSourceRegistryCodeSequence()
+{
+ clear();
+}
+
+
+void DRTStrainSourceRegistryCodeSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTStrainSourceRegistryCodeSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTStrainSourceRegistryCodeSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTStrainSourceRegistryCodeSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTStrainSourceRegistryCodeSequence::Item &DRTStrainSourceRegistryCodeSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTStrainSourceRegistryCodeSequence::Item &DRTStrainSourceRegistryCodeSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTStrainSourceRegistryCodeSequence::Item &DRTStrainSourceRegistryCodeSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTStrainSourceRegistryCodeSequence::Item &DRTStrainSourceRegistryCodeSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTStrainSourceRegistryCodeSequence::Item &DRTStrainSourceRegistryCodeSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTStrainSourceRegistryCodeSequence::Item &DRTStrainSourceRegistryCodeSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_StrainSourceRegistryCodeSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_StrainSourceRegistryCodeSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainSourceRegistryCodeSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_StrainSourceRegistryCodeSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTStructureSetROISequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTStrainStockSequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtsss.h"
+
+
+// --- item class ---
+
+DRTStrainStockSequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ StrainSource(DCM_StrainSource),
+ StrainSourceRegistryCodeSequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ StrainStockNumber(DCM_StrainStockNumber)
+{
+}
+
+
+DRTStrainStockSequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ StrainSource(copy.StrainSource),
+ StrainSourceRegistryCodeSequence(copy.StrainSourceRegistryCodeSequence),
+ StrainStockNumber(copy.StrainStockNumber)
+{
+}
+
+
+DRTStrainStockSequence::Item::~Item()
+{
+}
+
+
+DRTStrainStockSequence::Item &DRTStrainStockSequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ StrainSource = copy.StrainSource;
+ StrainSourceRegistryCodeSequence = copy.StrainSourceRegistryCodeSequence;
+ StrainStockNumber = copy.StrainStockNumber;
+ }
+ return *this;
+}
+
+
+void DRTStrainStockSequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ StrainStockNumber.clear();
+ StrainSource.clear();
+ StrainSourceRegistryCodeSequence.clear();
+ }
+}
+
+
+OFBool DRTStrainStockSequence::Item::isEmpty()
+{
+ return StrainStockNumber.isEmpty() &&
+ StrainSource.isEmpty() &&
+ StrainSourceRegistryCodeSequence.isEmpty();
+}
+
+
+OFBool DRTStrainStockSequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTStrainStockSequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, StrainStockNumber, "1", "1", "StrainStockSequence");
+ getAndCheckElementFromDataset(item, StrainSource, "1", "1", "StrainStockSequence");
+ StrainSourceRegistryCodeSequence.read(item, "1-n", "1", "StrainStockSequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmLongString(StrainStockNumber), "1", "1", "StrainStockSequence");
+ addElementToDataset(result, item, new DcmLongString(StrainSource), "1", "1", "StrainStockSequence");
+ if (result.good()) result = StrainSourceRegistryCodeSequence.write(item, "1-n", "1", "StrainStockSequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::Item::getStrainSource(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(StrainSource, value, pos);
+}
+
+
+OFCondition DRTStrainStockSequence::Item::getStrainStockNumber(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(StrainStockNumber, value, pos);
+}
+
+
+OFCondition DRTStrainStockSequence::Item::setStrainSource(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainSource.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::Item::setStrainStockNumber(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainStockNumber.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTStrainStockSequence::DRTStrainStockSequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTStrainStockSequence::DRTStrainStockSequence(const DRTStrainStockSequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTStrainStockSequence &DRTStrainStockSequence::operator=(const DRTStrainStockSequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTStrainStockSequence::~DRTStrainStockSequence()
+{
+ clear();
+}
+
+
+void DRTStrainStockSequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTStrainStockSequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTStrainStockSequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTStrainStockSequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTStrainStockSequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTStrainStockSequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTStrainStockSequence::Item &DRTStrainStockSequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTStrainStockSequence::Item &DRTStrainStockSequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTStrainStockSequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTStrainStockSequence::Item &DRTStrainStockSequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTStrainStockSequence::Item &DRTStrainStockSequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTStrainStockSequence::Item &DRTStrainStockSequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTStrainStockSequence::Item &DRTStrainStockSequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTStrainStockSequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_StrainStockSequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_StrainStockSequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTStrainStockSequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_StrainStockSequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTStructureSetIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
IssuerOfPatientID(DCM_IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(),
PatientBirthDate(DCM_PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(DCM_PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(DCM_PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(DCM_PatientAlternativeCalendar),
PatientSex(DCM_PatientSex),
ReferencedPatientPhotoSequence(),
QualityControlSubject(DCM_QualityControlSubject),
PatientBreedDescription(DCM_PatientBreedDescription),
PatientBreedCodeSequence(),
BreedRegistrationSequence(),
+ StrainDescription(DCM_StrainDescription),
+ StrainNomenclature(DCM_StrainNomenclature),
+ StrainCodeSequence(),
+ StrainAdditionalInformation(DCM_StrainAdditionalInformation),
+ StrainStockSequence(),
ResponsiblePerson(DCM_ResponsiblePerson),
ResponsiblePersonRole(DCM_ResponsiblePersonRole),
ResponsibleOrganization(DCM_ResponsibleOrganization),
PatientIdentityRemoved(DCM_PatientIdentityRemoved),
DeidentificationMethod(DCM_DeidentificationMethod),
DeidentificationMethodCodeSequence(),
+ SourcePatientGroupIdentificationSequence(),
+ GroupOfPatientsIdentificationSequence(),
ClinicalTrialSponsorName(DCM_ClinicalTrialSponsorName),
ClinicalTrialProtocolID(DCM_ClinicalTrialProtocolID),
ClinicalTrialProtocolName(DCM_ClinicalTrialProtocolName),
PatientAge(DCM_PatientAge),
PatientSize(DCM_PatientSize),
PatientWeight(DCM_PatientWeight),
+ PatientBodyMassIndex(DCM_PatientBodyMassIndex),
+ MeasuredAPDimension(DCM_MeasuredAPDimension),
+ MeasuredLateralDimension(DCM_MeasuredLateralDimension),
PatientSizeCodeSequence(),
+ MedicalAlerts(DCM_MedicalAlerts),
+ Allergies(DCM_Allergies),
+ SmokingStatus(DCM_SmokingStatus),
+ PregnancyStatus(DCM_PregnancyStatus),
+ LastMenstrualDate(DCM_LastMenstrualDate),
+ PatientState(DCM_PatientState),
Occupation(DCM_Occupation),
AdditionalPatientHistory(DCM_AdditionalPatientHistory),
AdmissionID(DCM_AdmissionID),
SeriesDescription(DCM_SeriesDescription),
SeriesDescriptionCodeSequence(),
OperatorsName(DCM_OperatorsName),
+ OperatorIdentificationSequence(),
ReferencedPerformedProcedureStepSequence(),
RequestAttributesSequence(),
PerformedProcedureStepID(DCM_PerformedProcedureStepID),
DeviceSerialNumber(DCM_DeviceSerialNumber),
SoftwareVersions(DCM_SoftwareVersions),
GantryID(DCM_GantryID),
+ UDISequence(),
SpatialResolution(DCM_SpatialResolution),
DateOfLastCalibration(DCM_DateOfLastCalibration),
TimeOfLastCalibration(DCM_TimeOfLastCalibration),
ReviewDate(DCM_ReviewDate),
ReviewTime(DCM_ReviewTime),
ReviewerName(DCM_ReviewerName),
+ ReferencedImageSequence(),
+ ReferencedInstanceSequence(),
+ DerivationDescription(DCM_DerivationDescription),
+ DerivationCodeSequence(),
+ SourceImageSequence(),
+ SourceInstanceSequence(),
SOPClassUID(DCM_SOPClassUID),
SOPInstanceUID(DCM_SOPInstanceUID),
SpecificCharacterSet(DCM_SpecificCharacterSet),
RelatedGeneralSOPClassUID(DCM_RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(DCM_OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(),
+ ContextGroupIdentificationSequence(),
+ MappingResourceIdentificationSequence(),
TimezoneOffsetFromUTC(DCM_TimezoneOffsetFromUTC),
ContributingEquipmentSequence(),
SOPInstanceStatus(DCM_SOPInstanceStatus),
IssuerOfPatientID(copy.IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
PatientBirthDate(copy.PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(copy.PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(copy.PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(copy.PatientAlternativeCalendar),
PatientSex(copy.PatientSex),
ReferencedPatientPhotoSequence(copy.ReferencedPatientPhotoSequence),
QualityControlSubject(copy.QualityControlSubject),
PatientBreedDescription(copy.PatientBreedDescription),
PatientBreedCodeSequence(copy.PatientBreedCodeSequence),
BreedRegistrationSequence(copy.BreedRegistrationSequence),
+ StrainDescription(copy.StrainDescription),
+ StrainNomenclature(copy.StrainNomenclature),
+ StrainCodeSequence(copy.StrainCodeSequence),
+ StrainAdditionalInformation(copy.StrainAdditionalInformation),
+ StrainStockSequence(copy.StrainStockSequence),
ResponsiblePerson(copy.ResponsiblePerson),
ResponsiblePersonRole(copy.ResponsiblePersonRole),
ResponsibleOrganization(copy.ResponsibleOrganization),
PatientIdentityRemoved(copy.PatientIdentityRemoved),
DeidentificationMethod(copy.DeidentificationMethod),
DeidentificationMethodCodeSequence(copy.DeidentificationMethodCodeSequence),
+ SourcePatientGroupIdentificationSequence(copy.SourcePatientGroupIdentificationSequence),
+ GroupOfPatientsIdentificationSequence(copy.GroupOfPatientsIdentificationSequence),
ClinicalTrialSponsorName(copy.ClinicalTrialSponsorName),
ClinicalTrialProtocolID(copy.ClinicalTrialProtocolID),
ClinicalTrialProtocolName(copy.ClinicalTrialProtocolName),
PatientAge(copy.PatientAge),
PatientSize(copy.PatientSize),
PatientWeight(copy.PatientWeight),
+ PatientBodyMassIndex(copy.PatientBodyMassIndex),
+ MeasuredAPDimension(copy.MeasuredAPDimension),
+ MeasuredLateralDimension(copy.MeasuredLateralDimension),
PatientSizeCodeSequence(copy.PatientSizeCodeSequence),
+ MedicalAlerts(copy.MedicalAlerts),
+ Allergies(copy.Allergies),
+ SmokingStatus(copy.SmokingStatus),
+ PregnancyStatus(copy.PregnancyStatus),
+ LastMenstrualDate(copy.LastMenstrualDate),
+ PatientState(copy.PatientState),
Occupation(copy.Occupation),
AdditionalPatientHistory(copy.AdditionalPatientHistory),
AdmissionID(copy.AdmissionID),
SeriesDescription(copy.SeriesDescription),
SeriesDescriptionCodeSequence(copy.SeriesDescriptionCodeSequence),
OperatorsName(copy.OperatorsName),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
ReferencedPerformedProcedureStepSequence(copy.ReferencedPerformedProcedureStepSequence),
RequestAttributesSequence(copy.RequestAttributesSequence),
PerformedProcedureStepID(copy.PerformedProcedureStepID),
DeviceSerialNumber(copy.DeviceSerialNumber),
SoftwareVersions(copy.SoftwareVersions),
GantryID(copy.GantryID),
+ UDISequence(copy.UDISequence),
SpatialResolution(copy.SpatialResolution),
DateOfLastCalibration(copy.DateOfLastCalibration),
TimeOfLastCalibration(copy.TimeOfLastCalibration),
ReviewDate(copy.ReviewDate),
ReviewTime(copy.ReviewTime),
ReviewerName(copy.ReviewerName),
+ ReferencedImageSequence(copy.ReferencedImageSequence),
+ ReferencedInstanceSequence(copy.ReferencedInstanceSequence),
+ DerivationDescription(copy.DerivationDescription),
+ DerivationCodeSequence(copy.DerivationCodeSequence),
+ SourceImageSequence(copy.SourceImageSequence),
+ SourceInstanceSequence(copy.SourceInstanceSequence),
SOPClassUID(copy.SOPClassUID),
SOPInstanceUID(copy.SOPInstanceUID),
SpecificCharacterSet(copy.SpecificCharacterSet),
RelatedGeneralSOPClassUID(copy.RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(copy.OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(copy.CodingSchemeIdentificationSequence),
+ ContextGroupIdentificationSequence(copy.ContextGroupIdentificationSequence),
+ MappingResourceIdentificationSequence(copy.MappingResourceIdentificationSequence),
TimezoneOffsetFromUTC(copy.TimezoneOffsetFromUTC),
ContributingEquipmentSequence(copy.ContributingEquipmentSequence),
SOPInstanceStatus(copy.SOPInstanceStatus),
IssuerOfPatientID = copy.IssuerOfPatientID;
IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
PatientBirthDate = copy.PatientBirthDate;
+ PatientBirthDateInAlternativeCalendar = copy.PatientBirthDateInAlternativeCalendar;
+ PatientDeathDateInAlternativeCalendar = copy.PatientDeathDateInAlternativeCalendar;
+ PatientAlternativeCalendar = copy.PatientAlternativeCalendar;
PatientSex = copy.PatientSex;
ReferencedPatientPhotoSequence = copy.ReferencedPatientPhotoSequence;
QualityControlSubject = copy.QualityControlSubject;
PatientBreedDescription = copy.PatientBreedDescription;
PatientBreedCodeSequence = copy.PatientBreedCodeSequence;
BreedRegistrationSequence = copy.BreedRegistrationSequence;
+ StrainDescription = copy.StrainDescription;
+ StrainNomenclature = copy.StrainNomenclature;
+ StrainCodeSequence = copy.StrainCodeSequence;
+ StrainAdditionalInformation = copy.StrainAdditionalInformation;
+ StrainStockSequence = copy.StrainStockSequence;
ResponsiblePerson = copy.ResponsiblePerson;
ResponsiblePersonRole = copy.ResponsiblePersonRole;
ResponsibleOrganization = copy.ResponsibleOrganization;
PatientIdentityRemoved = copy.PatientIdentityRemoved;
DeidentificationMethod = copy.DeidentificationMethod;
DeidentificationMethodCodeSequence = copy.DeidentificationMethodCodeSequence;
+ SourcePatientGroupIdentificationSequence = copy.SourcePatientGroupIdentificationSequence;
+ GroupOfPatientsIdentificationSequence = copy.GroupOfPatientsIdentificationSequence;
ClinicalTrialSponsorName = copy.ClinicalTrialSponsorName;
ClinicalTrialProtocolID = copy.ClinicalTrialProtocolID;
ClinicalTrialProtocolName = copy.ClinicalTrialProtocolName;
PatientAge = copy.PatientAge;
PatientSize = copy.PatientSize;
PatientWeight = copy.PatientWeight;
+ PatientBodyMassIndex = copy.PatientBodyMassIndex;
+ MeasuredAPDimension = copy.MeasuredAPDimension;
+ MeasuredLateralDimension = copy.MeasuredLateralDimension;
PatientSizeCodeSequence = copy.PatientSizeCodeSequence;
+ MedicalAlerts = copy.MedicalAlerts;
+ Allergies = copy.Allergies;
+ SmokingStatus = copy.SmokingStatus;
+ PregnancyStatus = copy.PregnancyStatus;
+ LastMenstrualDate = copy.LastMenstrualDate;
+ PatientState = copy.PatientState;
Occupation = copy.Occupation;
AdditionalPatientHistory = copy.AdditionalPatientHistory;
AdmissionID = copy.AdmissionID;
SeriesDescription = copy.SeriesDescription;
SeriesDescriptionCodeSequence = copy.SeriesDescriptionCodeSequence;
OperatorsName = copy.OperatorsName;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
ReferencedPerformedProcedureStepSequence = copy.ReferencedPerformedProcedureStepSequence;
RequestAttributesSequence = copy.RequestAttributesSequence;
PerformedProcedureStepID = copy.PerformedProcedureStepID;
DeviceSerialNumber = copy.DeviceSerialNumber;
SoftwareVersions = copy.SoftwareVersions;
GantryID = copy.GantryID;
+ UDISequence = copy.UDISequence;
SpatialResolution = copy.SpatialResolution;
DateOfLastCalibration = copy.DateOfLastCalibration;
TimeOfLastCalibration = copy.TimeOfLastCalibration;
ReviewDate = copy.ReviewDate;
ReviewTime = copy.ReviewTime;
ReviewerName = copy.ReviewerName;
+ ReferencedImageSequence = copy.ReferencedImageSequence;
+ ReferencedInstanceSequence = copy.ReferencedInstanceSequence;
+ DerivationDescription = copy.DerivationDescription;
+ DerivationCodeSequence = copy.DerivationCodeSequence;
+ SourceImageSequence = copy.SourceImageSequence;
+ SourceInstanceSequence = copy.SourceInstanceSequence;
SOPClassUID = copy.SOPClassUID;
SOPInstanceUID = copy.SOPInstanceUID;
SpecificCharacterSet = copy.SpecificCharacterSet;
RelatedGeneralSOPClassUID = copy.RelatedGeneralSOPClassUID;
OriginalSpecializedSOPClassUID = copy.OriginalSpecializedSOPClassUID;
CodingSchemeIdentificationSequence = copy.CodingSchemeIdentificationSequence;
+ ContextGroupIdentificationSequence = copy.ContextGroupIdentificationSequence;
+ MappingResourceIdentificationSequence = copy.MappingResourceIdentificationSequence;
TimezoneOffsetFromUTC = copy.TimezoneOffsetFromUTC;
ContributingEquipmentSequence = copy.ContributingEquipmentSequence;
SOPInstanceStatus = copy.SOPInstanceStatus;
IssuerOfPatientID.clear();
IssuerOfPatientIDQualifiersSequence.clear();
PatientBirthDate.clear();
+ PatientBirthDateInAlternativeCalendar.clear();
+ PatientDeathDateInAlternativeCalendar.clear();
+ PatientAlternativeCalendar.clear();
PatientSex.clear();
ReferencedPatientPhotoSequence.clear();
QualityControlSubject.clear();
PatientBreedDescription.clear();
PatientBreedCodeSequence.clear();
BreedRegistrationSequence.clear();
+ StrainDescription.clear();
+ StrainNomenclature.clear();
+ StrainCodeSequence.clear();
+ StrainAdditionalInformation.clear();
+ StrainStockSequence.clear();
ResponsiblePerson.clear();
ResponsiblePersonRole.clear();
ResponsibleOrganization.clear();
PatientIdentityRemoved.clear();
DeidentificationMethod.clear();
DeidentificationMethodCodeSequence.clear();
+ SourcePatientGroupIdentificationSequence.clear();
+ GroupOfPatientsIdentificationSequence.clear();
ClinicalTrialSponsorName.clear();
ClinicalTrialProtocolID.clear();
ClinicalTrialProtocolName.clear();
PatientAge.clear();
PatientSize.clear();
PatientWeight.clear();
+ PatientBodyMassIndex.clear();
+ MeasuredAPDimension.clear();
+ MeasuredLateralDimension.clear();
PatientSizeCodeSequence.clear();
+ MedicalAlerts.clear();
+ Allergies.clear();
+ SmokingStatus.clear();
+ PregnancyStatus.clear();
+ LastMenstrualDate.clear();
+ PatientState.clear();
Occupation.clear();
AdditionalPatientHistory.clear();
AdmissionID.clear();
SeriesDescription.clear();
SeriesDescriptionCodeSequence.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
ReferencedPerformedProcedureStepSequence.clear();
RequestAttributesSequence.clear();
PerformedProcedureStepID.clear();
DeviceSerialNumber.clear();
SoftwareVersions.clear();
GantryID.clear();
+ UDISequence.clear();
SpatialResolution.clear();
DateOfLastCalibration.clear();
TimeOfLastCalibration.clear();
ReviewDate.clear();
ReviewTime.clear();
ReviewerName.clear();
+ ReferencedImageSequence.clear();
+ ReferencedInstanceSequence.clear();
+ DerivationDescription.clear();
+ DerivationCodeSequence.clear();
+ SourceImageSequence.clear();
+ SourceInstanceSequence.clear();
SOPClassUID.clear();
SOPInstanceUID.clear();
SpecificCharacterSet.clear();
RelatedGeneralSOPClassUID.clear();
OriginalSpecializedSOPClassUID.clear();
CodingSchemeIdentificationSequence.clear();
+ ContextGroupIdentificationSequence.clear();
+ MappingResourceIdentificationSequence.clear();
TimezoneOffsetFromUTC.clear();
ContributingEquipmentSequence.clear();
SOPInstanceStatus.clear();
getAndCheckElementFromDataset(dataset, DeviceSerialNumber, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SoftwareVersions, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, GantryID, "1", "3", "GeneralEquipmentModule");
+ UDISequence.read(dataset, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SpatialResolution, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, DateOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, TimeOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, ReviewerName, "1", "2C", "ApprovalModule");
}
+ // --- GeneralReferenceModule (U) ---
+ ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralReferenceModule");
+ DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+
// --- SOPCommonModule (M) ---
getAndCheckElementFromDataset(dataset, SOPClassUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, SOPInstanceUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, RelatedGeneralSOPClassUID, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, OriginalSpecializedSOPClassUID, "1", "3", "SOPCommonModule");
CodingSchemeIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ ContextGroupIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ MappingResourceIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, TimezoneOffsetFromUTC, "1", "3", "SOPCommonModule");
ContributingEquipmentSequence.read(dataset, "1-n", "3", "SOPCommonModule");
// getAndCheckElementFromDataset(dataset, InstanceNumber, "1", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, IssuerOfPatientID, "1", "3", "PatientModule");
IssuerOfPatientIDQualifiersSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBirthDate, "1", "2", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientBirthDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientDeathDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientAlternativeCalendar, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientSex, "1", "2", "PatientModule");
ReferencedPatientPhotoSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, QualityControlSubject, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBreedDescription, "1", "2C", "PatientModule");
PatientBreedCodeSequence.read(dataset, "1-n", "2C", "PatientModule");
BreedRegistrationSequence.read(dataset, "1-n", "2C", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainDescription, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainNomenclature, "1", "3", "PatientModule");
+ StrainCodeSequence.read(dataset, "1-n", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainAdditionalInformation, "1", "3", "PatientModule");
+ StrainStockSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePerson, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePersonRole, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsibleOrganization, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientIdentityRemoved, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, DeidentificationMethod, "1-n", "1C", "PatientModule");
DeidentificationMethodCodeSequence.read(dataset, "1-n", "1C", "PatientModule");
+ SourcePatientGroupIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
+ GroupOfPatientsIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (dataset.tagExists(DCM_ClinicalTrialSponsorName) ||
getAndCheckElementFromDataset(dataset, PatientAge, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientSize, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientWeight, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientBodyMassIndex, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredAPDimension, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredLateralDimension, "1", "3", "PatientStudyModule");
PatientSizeCodeSequence.read(dataset, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MedicalAlerts, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, Allergies, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, SmokingStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PregnancyStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, LastMenstrualDate, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientState, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, Occupation, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdditionalPatientHistory, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdmissionID, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, SeriesDescription, "1", "3", "RTSeriesModule");
SeriesDescriptionCodeSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, OperatorsName, "1-n", "2", "RTSeriesModule");
+ OperatorIdentificationSequence.read(dataset, "1-n", "3", "RTSeriesModule");
ReferencedPerformedProcedureStepSequence.read(dataset, "1-n", "3", "RTSeriesModule");
RequestAttributesSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, PerformedProcedureStepID, "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(IssuerOfPatientID), "1", "3", "PatientModule");
if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmDate(PatientBirthDate), "1", "2", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientBirthDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientDeathDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmCodeString(PatientAlternativeCalendar), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientSex), "1", "2", "PatientModule");
if (result.good()) result = ReferencedPatientPhotoSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlSubject), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(PatientBreedDescription), "1", "2C", "PatientModule");
if (result.good()) result = PatientBreedCodeSequence.write(dataset, "1-n" ,"2C", "PatientModule");
if (result.good()) result = BreedRegistrationSequence.write(dataset, "1-n" ,"2C", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedCharacters(StrainDescription), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(StrainNomenclature), "1", "3", "PatientModule");
+ if (result.good()) result = StrainCodeSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedText(StrainAdditionalInformation), "1", "3", "PatientModule");
+ if (result.good()) result = StrainStockSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmPersonName(ResponsiblePerson), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(ResponsiblePersonRole), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(ResponsibleOrganization), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientIdentityRemoved), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(DeidentificationMethod), "1-n", "1C", "PatientModule");
if (result.good()) result = DeidentificationMethodCodeSequence.write(dataset, "1-n" ,"1C", "PatientModule");
+ if (result.good()) result = SourcePatientGroupIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ if (result.good()) result = GroupOfPatientsIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (isClinicalTrialSubjectModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmAgeString(PatientAge), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientSize), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientWeight), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(PatientBodyMassIndex), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredAPDimension), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredLateralDimension), "1", "3", "PatientStudyModule");
if (result.good()) result = PatientSizeCodeSequence.write(dataset, "1-n" ,"3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(MedicalAlerts), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(Allergies), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmCodeString(SmokingStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmUnsignedShort(PregnancyStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDate(LastMenstrualDate), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientState), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmShortString(Occupation), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongText(AdditionalPatientHistory), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(AdmissionID), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(SeriesDescription), "1", "3", "RTSeriesModule");
if (result.good()) result = SeriesDescriptionCodeSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmPersonName(OperatorsName), "1-n", "2", "RTSeriesModule");
+ if (result.good()) result = OperatorIdentificationSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = ReferencedPerformedProcedureStepSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = RequestAttributesSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmShortString(PerformedProcedureStepID), "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(DeviceSerialNumber), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(SoftwareVersions), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(GantryID), "1", "3", "GeneralEquipmentModule");
+ if (result.good()) result = UDISequence.write(dataset, "1-n" ,"3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDecimalString(SpatialResolution), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(DateOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmTime(TimeOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmPersonName(ReviewerName), "1", "2C", "ApprovalModule");
}
+ // --- GeneralReferenceModule (U) ---
+ if (isGeneralReferenceModulePresent(OFFalse /*complete*/))
+ {
+ if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralReferenceModule");
+ if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ }
+
// --- SOPCommonModule (M) ---
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPClassUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPInstanceUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(RelatedGeneralSOPClassUID), "1-n", "3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(OriginalSpecializedSOPClassUID), "1", "3", "SOPCommonModule");
if (result.good()) result = CodingSchemeIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = ContextGroupIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = MappingResourceIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmShortString(TimezoneOffsetFromUTC), "1", "3", "SOPCommonModule");
if (result.good()) result = ContributingEquipmentSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
// addElementToDataset(result, dataset, new DcmIntegerString(InstanceNumber), "1", "3", "SOPCommonModule");
!PatientAge.isEmpty() ||
!PatientSize.isEmpty() ||
!PatientWeight.isEmpty() ||
+ !PatientBodyMassIndex.isEmpty() ||
+ !MeasuredAPDimension.isEmpty() ||
+ !MeasuredLateralDimension.isEmpty() ||
!PatientSizeCodeSequence.isEmpty() ||
+ !MedicalAlerts.isEmpty() ||
+ !Allergies.isEmpty() ||
+ !SmokingStatus.isEmpty() ||
+ !PregnancyStatus.isEmpty() ||
+ !LastMenstrualDate.isEmpty() ||
+ !PatientState.isEmpty() ||
!Occupation.isEmpty() ||
!AdditionalPatientHistory.isEmpty() ||
!AdmissionID.isEmpty() ||
}
+OFBool DRTStructureSetIOD::isGeneralReferenceModulePresent(const OFBool /*complete*/)
+{
+ /* check whether at least one attribute is present */
+ return !ReferencedImageSequence.isEmpty() ||
+ !ReferencedInstanceSequence.isEmpty() ||
+ !DerivationDescription.isEmpty() ||
+ !DerivationCodeSequence.isEmpty() ||
+ !SourceImageSequence.isEmpty() ||
+ !SourceInstanceSequence.isEmpty();
+}
+
+
OFBool DRTStructureSetIOD::isCommonInstanceReferenceModulePresent(const OFBool /*complete*/)
{
/* check whether at least one attribute is present */
}
+OFCondition DRTStructureSetIOD::getAllergies(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(Allergies, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getApprovalStatus(OFString &value, const signed long pos) const
{
return getStringValueFromElement(ApprovalStatus, value, pos);
}
+OFCondition DRTStructureSetIOD::getDerivationDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(DerivationDescription, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getDeviceSerialNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(DeviceSerialNumber, value, pos);
}
+OFCondition DRTStructureSetIOD::getLastMenstrualDate(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(LastMenstrualDate, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getLongitudinalTemporalInformationModified(OFString &value, const signed long pos) const
{
return getStringValueFromElement(LongitudinalTemporalInformationModified, value, pos);
}
+OFCondition DRTStructureSetIOD::getMeasuredAPDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredAPDimension, value, pos);
+}
+
+
+OFCondition DRTStructureSetIOD::getMeasuredAPDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredAPDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTStructureSetIOD::getMeasuredLateralDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredLateralDimension, value, pos);
+}
+
+
+OFCondition DRTStructureSetIOD::getMeasuredLateralDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredLateralDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTStructureSetIOD::getMedicalAlerts(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MedicalAlerts, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getModality(OFString &value, const signed long pos) const
{
return getStringValueFromElement(Modality, value, pos);
}
+OFCondition DRTStructureSetIOD::getPatientAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getPatientBirthDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthDate, value, pos);
}
+OFCondition DRTStructureSetIOD::getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBirthDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getPatientBirthTime(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthTime, value, pos);
}
+OFCondition DRTStructureSetIOD::getPatientBodyMassIndex(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBodyMassIndex, value, pos);
+}
+
+
+OFCondition DRTStructureSetIOD::getPatientBodyMassIndex(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, PatientBodyMassIndex).getFloat64(value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getPatientBreedDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBreedDescription, value, pos);
}
+OFCondition DRTStructureSetIOD::getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientDeathDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getPatientID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientID, value, pos);
}
+OFCondition DRTStructureSetIOD::getPatientState(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientState, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getPatientWeight(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientWeight, value, pos);
}
+OFCondition DRTStructureSetIOD::getPregnancyStatus(Uint16 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmUnsignedShort &, PregnancyStatus).getUint16(value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getQualityControlSubject(OFString &value, const signed long pos) const
{
return getStringValueFromElement(QualityControlSubject, value, pos);
}
+OFCondition DRTStructureSetIOD::getSmokingStatus(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(SmokingStatus, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getSoftwareVersions(OFString &value, const signed long pos) const
{
return getStringValueFromElement(SoftwareVersions, value, pos);
}
+OFCondition DRTStructureSetIOD::getStrainAdditionalInformation(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainAdditionalInformation, value, pos);
+}
+
+
+OFCondition DRTStructureSetIOD::getStrainDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainDescription, value, pos);
+}
+
+
+OFCondition DRTStructureSetIOD::getStrainNomenclature(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainNomenclature, value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::getStructureSetDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(StructureSetDate, value, pos);
}
+OFCondition DRTStructureSetIOD::setAllergies(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = Allergies.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setApprovalStatus(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setDerivationDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = DerivationDescription.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setDeviceSerialNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setLastMenstrualDate(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LastMenstrualDate.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setLongitudinalTemporalInformationModified(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setMeasuredAPDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredAPDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTStructureSetIOD::setMeasuredLateralDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredLateralDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTStructureSetIOD::setMedicalAlerts(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = MedicalAlerts.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setModality(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setPatientAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setPatientBirthDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBirthDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setPatientBirthTime(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setPatientBodyMassIndex(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBodyMassIndex.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setPatientBreedDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientDeathDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setPatientID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setPatientState(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientState.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setPatientWeight(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setPregnancyStatus(const Uint16 value, const unsigned long pos)
+{
+ return PregnancyStatus.putUint16(value, pos);
+}
+
+
OFCondition DRTStructureSetIOD::setQualityControlSubject(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setSmokingStatus(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = SmokingStatus.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setSoftwareVersions(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
}
+OFCondition DRTStructureSetIOD::setStrainAdditionalInformation(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = StrainAdditionalInformation.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTStructureSetIOD::setStrainDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainDescription.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTStructureSetIOD::setStrainNomenclature(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainNomenclature.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTStructureSetIOD::setStructureSetDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTTreatmentMachineSequenceInRTTreatmentMachineRecordModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTTreatmentMachineSequenceInRTBrachyApplicationSetupsModule
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTTreatmentSummaryRecordIOD
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
IssuerOfPatientID(DCM_IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(),
PatientBirthDate(DCM_PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(DCM_PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(DCM_PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(DCM_PatientAlternativeCalendar),
PatientSex(DCM_PatientSex),
ReferencedPatientPhotoSequence(),
QualityControlSubject(DCM_QualityControlSubject),
PatientBreedDescription(DCM_PatientBreedDescription),
PatientBreedCodeSequence(),
BreedRegistrationSequence(),
+ StrainDescription(DCM_StrainDescription),
+ StrainNomenclature(DCM_StrainNomenclature),
+ StrainCodeSequence(),
+ StrainAdditionalInformation(DCM_StrainAdditionalInformation),
+ StrainStockSequence(),
ResponsiblePerson(DCM_ResponsiblePerson),
ResponsiblePersonRole(DCM_ResponsiblePersonRole),
ResponsibleOrganization(DCM_ResponsibleOrganization),
PatientIdentityRemoved(DCM_PatientIdentityRemoved),
DeidentificationMethod(DCM_DeidentificationMethod),
DeidentificationMethodCodeSequence(),
+ SourcePatientGroupIdentificationSequence(),
+ GroupOfPatientsIdentificationSequence(),
ClinicalTrialSponsorName(DCM_ClinicalTrialSponsorName),
ClinicalTrialProtocolID(DCM_ClinicalTrialProtocolID),
ClinicalTrialProtocolName(DCM_ClinicalTrialProtocolName),
PatientAge(DCM_PatientAge),
PatientSize(DCM_PatientSize),
PatientWeight(DCM_PatientWeight),
+ PatientBodyMassIndex(DCM_PatientBodyMassIndex),
+ MeasuredAPDimension(DCM_MeasuredAPDimension),
+ MeasuredLateralDimension(DCM_MeasuredLateralDimension),
PatientSizeCodeSequence(),
+ MedicalAlerts(DCM_MedicalAlerts),
+ Allergies(DCM_Allergies),
+ SmokingStatus(DCM_SmokingStatus),
+ PregnancyStatus(DCM_PregnancyStatus),
+ LastMenstrualDate(DCM_LastMenstrualDate),
+ PatientState(DCM_PatientState),
Occupation(DCM_Occupation),
AdditionalPatientHistory(DCM_AdditionalPatientHistory),
AdmissionID(DCM_AdmissionID),
SeriesDescription(DCM_SeriesDescription),
SeriesDescriptionCodeSequence(),
OperatorsName(DCM_OperatorsName),
+ OperatorIdentificationSequence(),
ReferencedPerformedProcedureStepSequence(),
RequestAttributesSequence(),
PerformedProcedureStepID(DCM_PerformedProcedureStepID),
DeviceSerialNumber(DCM_DeviceSerialNumber),
SoftwareVersions(DCM_SoftwareVersions),
GantryID(DCM_GantryID),
+ UDISequence(),
SpatialResolution(DCM_SpatialResolution),
DateOfLastCalibration(DCM_DateOfLastCalibration),
TimeOfLastCalibration(DCM_TimeOfLastCalibration),
FractionGroupSummarySequence(),
TreatmentSummaryMeasuredDoseReferenceSequence(),
TreatmentSummaryCalculatedDoseReferenceSequence(),
+ ReferencedImageSequence(),
+ ReferencedInstanceSequence(),
+ DerivationDescription(DCM_DerivationDescription),
+ DerivationCodeSequence(),
+ SourceImageSequence(),
+ SourceInstanceSequence(),
SOPClassUID(DCM_SOPClassUID),
SOPInstanceUID(DCM_SOPInstanceUID),
SpecificCharacterSet(DCM_SpecificCharacterSet),
RelatedGeneralSOPClassUID(DCM_RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(DCM_OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(),
+ ContextGroupIdentificationSequence(),
+ MappingResourceIdentificationSequence(),
TimezoneOffsetFromUTC(DCM_TimezoneOffsetFromUTC),
ContributingEquipmentSequence(),
SOPInstanceStatus(DCM_SOPInstanceStatus),
IssuerOfPatientID(copy.IssuerOfPatientID),
IssuerOfPatientIDQualifiersSequence(copy.IssuerOfPatientIDQualifiersSequence),
PatientBirthDate(copy.PatientBirthDate),
+ PatientBirthDateInAlternativeCalendar(copy.PatientBirthDateInAlternativeCalendar),
+ PatientDeathDateInAlternativeCalendar(copy.PatientDeathDateInAlternativeCalendar),
+ PatientAlternativeCalendar(copy.PatientAlternativeCalendar),
PatientSex(copy.PatientSex),
ReferencedPatientPhotoSequence(copy.ReferencedPatientPhotoSequence),
QualityControlSubject(copy.QualityControlSubject),
PatientBreedDescription(copy.PatientBreedDescription),
PatientBreedCodeSequence(copy.PatientBreedCodeSequence),
BreedRegistrationSequence(copy.BreedRegistrationSequence),
+ StrainDescription(copy.StrainDescription),
+ StrainNomenclature(copy.StrainNomenclature),
+ StrainCodeSequence(copy.StrainCodeSequence),
+ StrainAdditionalInformation(copy.StrainAdditionalInformation),
+ StrainStockSequence(copy.StrainStockSequence),
ResponsiblePerson(copy.ResponsiblePerson),
ResponsiblePersonRole(copy.ResponsiblePersonRole),
ResponsibleOrganization(copy.ResponsibleOrganization),
PatientIdentityRemoved(copy.PatientIdentityRemoved),
DeidentificationMethod(copy.DeidentificationMethod),
DeidentificationMethodCodeSequence(copy.DeidentificationMethodCodeSequence),
+ SourcePatientGroupIdentificationSequence(copy.SourcePatientGroupIdentificationSequence),
+ GroupOfPatientsIdentificationSequence(copy.GroupOfPatientsIdentificationSequence),
ClinicalTrialSponsorName(copy.ClinicalTrialSponsorName),
ClinicalTrialProtocolID(copy.ClinicalTrialProtocolID),
ClinicalTrialProtocolName(copy.ClinicalTrialProtocolName),
PatientAge(copy.PatientAge),
PatientSize(copy.PatientSize),
PatientWeight(copy.PatientWeight),
+ PatientBodyMassIndex(copy.PatientBodyMassIndex),
+ MeasuredAPDimension(copy.MeasuredAPDimension),
+ MeasuredLateralDimension(copy.MeasuredLateralDimension),
PatientSizeCodeSequence(copy.PatientSizeCodeSequence),
+ MedicalAlerts(copy.MedicalAlerts),
+ Allergies(copy.Allergies),
+ SmokingStatus(copy.SmokingStatus),
+ PregnancyStatus(copy.PregnancyStatus),
+ LastMenstrualDate(copy.LastMenstrualDate),
+ PatientState(copy.PatientState),
Occupation(copy.Occupation),
AdditionalPatientHistory(copy.AdditionalPatientHistory),
AdmissionID(copy.AdmissionID),
SeriesDescription(copy.SeriesDescription),
SeriesDescriptionCodeSequence(copy.SeriesDescriptionCodeSequence),
OperatorsName(copy.OperatorsName),
+ OperatorIdentificationSequence(copy.OperatorIdentificationSequence),
ReferencedPerformedProcedureStepSequence(copy.ReferencedPerformedProcedureStepSequence),
RequestAttributesSequence(copy.RequestAttributesSequence),
PerformedProcedureStepID(copy.PerformedProcedureStepID),
DeviceSerialNumber(copy.DeviceSerialNumber),
SoftwareVersions(copy.SoftwareVersions),
GantryID(copy.GantryID),
+ UDISequence(copy.UDISequence),
SpatialResolution(copy.SpatialResolution),
DateOfLastCalibration(copy.DateOfLastCalibration),
TimeOfLastCalibration(copy.TimeOfLastCalibration),
FractionGroupSummarySequence(copy.FractionGroupSummarySequence),
TreatmentSummaryMeasuredDoseReferenceSequence(copy.TreatmentSummaryMeasuredDoseReferenceSequence),
TreatmentSummaryCalculatedDoseReferenceSequence(copy.TreatmentSummaryCalculatedDoseReferenceSequence),
+ ReferencedImageSequence(copy.ReferencedImageSequence),
+ ReferencedInstanceSequence(copy.ReferencedInstanceSequence),
+ DerivationDescription(copy.DerivationDescription),
+ DerivationCodeSequence(copy.DerivationCodeSequence),
+ SourceImageSequence(copy.SourceImageSequence),
+ SourceInstanceSequence(copy.SourceInstanceSequence),
SOPClassUID(copy.SOPClassUID),
SOPInstanceUID(copy.SOPInstanceUID),
SpecificCharacterSet(copy.SpecificCharacterSet),
RelatedGeneralSOPClassUID(copy.RelatedGeneralSOPClassUID),
OriginalSpecializedSOPClassUID(copy.OriginalSpecializedSOPClassUID),
CodingSchemeIdentificationSequence(copy.CodingSchemeIdentificationSequence),
+ ContextGroupIdentificationSequence(copy.ContextGroupIdentificationSequence),
+ MappingResourceIdentificationSequence(copy.MappingResourceIdentificationSequence),
TimezoneOffsetFromUTC(copy.TimezoneOffsetFromUTC),
ContributingEquipmentSequence(copy.ContributingEquipmentSequence),
SOPInstanceStatus(copy.SOPInstanceStatus),
IssuerOfPatientID = copy.IssuerOfPatientID;
IssuerOfPatientIDQualifiersSequence = copy.IssuerOfPatientIDQualifiersSequence;
PatientBirthDate = copy.PatientBirthDate;
+ PatientBirthDateInAlternativeCalendar = copy.PatientBirthDateInAlternativeCalendar;
+ PatientDeathDateInAlternativeCalendar = copy.PatientDeathDateInAlternativeCalendar;
+ PatientAlternativeCalendar = copy.PatientAlternativeCalendar;
PatientSex = copy.PatientSex;
ReferencedPatientPhotoSequence = copy.ReferencedPatientPhotoSequence;
QualityControlSubject = copy.QualityControlSubject;
PatientBreedDescription = copy.PatientBreedDescription;
PatientBreedCodeSequence = copy.PatientBreedCodeSequence;
BreedRegistrationSequence = copy.BreedRegistrationSequence;
+ StrainDescription = copy.StrainDescription;
+ StrainNomenclature = copy.StrainNomenclature;
+ StrainCodeSequence = copy.StrainCodeSequence;
+ StrainAdditionalInformation = copy.StrainAdditionalInformation;
+ StrainStockSequence = copy.StrainStockSequence;
ResponsiblePerson = copy.ResponsiblePerson;
ResponsiblePersonRole = copy.ResponsiblePersonRole;
ResponsibleOrganization = copy.ResponsibleOrganization;
PatientIdentityRemoved = copy.PatientIdentityRemoved;
DeidentificationMethod = copy.DeidentificationMethod;
DeidentificationMethodCodeSequence = copy.DeidentificationMethodCodeSequence;
+ SourcePatientGroupIdentificationSequence = copy.SourcePatientGroupIdentificationSequence;
+ GroupOfPatientsIdentificationSequence = copy.GroupOfPatientsIdentificationSequence;
ClinicalTrialSponsorName = copy.ClinicalTrialSponsorName;
ClinicalTrialProtocolID = copy.ClinicalTrialProtocolID;
ClinicalTrialProtocolName = copy.ClinicalTrialProtocolName;
PatientAge = copy.PatientAge;
PatientSize = copy.PatientSize;
PatientWeight = copy.PatientWeight;
+ PatientBodyMassIndex = copy.PatientBodyMassIndex;
+ MeasuredAPDimension = copy.MeasuredAPDimension;
+ MeasuredLateralDimension = copy.MeasuredLateralDimension;
PatientSizeCodeSequence = copy.PatientSizeCodeSequence;
+ MedicalAlerts = copy.MedicalAlerts;
+ Allergies = copy.Allergies;
+ SmokingStatus = copy.SmokingStatus;
+ PregnancyStatus = copy.PregnancyStatus;
+ LastMenstrualDate = copy.LastMenstrualDate;
+ PatientState = copy.PatientState;
Occupation = copy.Occupation;
AdditionalPatientHistory = copy.AdditionalPatientHistory;
AdmissionID = copy.AdmissionID;
SeriesDescription = copy.SeriesDescription;
SeriesDescriptionCodeSequence = copy.SeriesDescriptionCodeSequence;
OperatorsName = copy.OperatorsName;
+ OperatorIdentificationSequence = copy.OperatorIdentificationSequence;
ReferencedPerformedProcedureStepSequence = copy.ReferencedPerformedProcedureStepSequence;
RequestAttributesSequence = copy.RequestAttributesSequence;
PerformedProcedureStepID = copy.PerformedProcedureStepID;
DeviceSerialNumber = copy.DeviceSerialNumber;
SoftwareVersions = copy.SoftwareVersions;
GantryID = copy.GantryID;
+ UDISequence = copy.UDISequence;
SpatialResolution = copy.SpatialResolution;
DateOfLastCalibration = copy.DateOfLastCalibration;
TimeOfLastCalibration = copy.TimeOfLastCalibration;
FractionGroupSummarySequence = copy.FractionGroupSummarySequence;
TreatmentSummaryMeasuredDoseReferenceSequence = copy.TreatmentSummaryMeasuredDoseReferenceSequence;
TreatmentSummaryCalculatedDoseReferenceSequence = copy.TreatmentSummaryCalculatedDoseReferenceSequence;
+ ReferencedImageSequence = copy.ReferencedImageSequence;
+ ReferencedInstanceSequence = copy.ReferencedInstanceSequence;
+ DerivationDescription = copy.DerivationDescription;
+ DerivationCodeSequence = copy.DerivationCodeSequence;
+ SourceImageSequence = copy.SourceImageSequence;
+ SourceInstanceSequence = copy.SourceInstanceSequence;
SOPClassUID = copy.SOPClassUID;
SOPInstanceUID = copy.SOPInstanceUID;
SpecificCharacterSet = copy.SpecificCharacterSet;
RelatedGeneralSOPClassUID = copy.RelatedGeneralSOPClassUID;
OriginalSpecializedSOPClassUID = copy.OriginalSpecializedSOPClassUID;
CodingSchemeIdentificationSequence = copy.CodingSchemeIdentificationSequence;
+ ContextGroupIdentificationSequence = copy.ContextGroupIdentificationSequence;
+ MappingResourceIdentificationSequence = copy.MappingResourceIdentificationSequence;
TimezoneOffsetFromUTC = copy.TimezoneOffsetFromUTC;
ContributingEquipmentSequence = copy.ContributingEquipmentSequence;
SOPInstanceStatus = copy.SOPInstanceStatus;
IssuerOfPatientID.clear();
IssuerOfPatientIDQualifiersSequence.clear();
PatientBirthDate.clear();
+ PatientBirthDateInAlternativeCalendar.clear();
+ PatientDeathDateInAlternativeCalendar.clear();
+ PatientAlternativeCalendar.clear();
PatientSex.clear();
ReferencedPatientPhotoSequence.clear();
QualityControlSubject.clear();
PatientBreedDescription.clear();
PatientBreedCodeSequence.clear();
BreedRegistrationSequence.clear();
+ StrainDescription.clear();
+ StrainNomenclature.clear();
+ StrainCodeSequence.clear();
+ StrainAdditionalInformation.clear();
+ StrainStockSequence.clear();
ResponsiblePerson.clear();
ResponsiblePersonRole.clear();
ResponsibleOrganization.clear();
PatientIdentityRemoved.clear();
DeidentificationMethod.clear();
DeidentificationMethodCodeSequence.clear();
+ SourcePatientGroupIdentificationSequence.clear();
+ GroupOfPatientsIdentificationSequence.clear();
ClinicalTrialSponsorName.clear();
ClinicalTrialProtocolID.clear();
ClinicalTrialProtocolName.clear();
PatientAge.clear();
PatientSize.clear();
PatientWeight.clear();
+ PatientBodyMassIndex.clear();
+ MeasuredAPDimension.clear();
+ MeasuredLateralDimension.clear();
PatientSizeCodeSequence.clear();
+ MedicalAlerts.clear();
+ Allergies.clear();
+ SmokingStatus.clear();
+ PregnancyStatus.clear();
+ LastMenstrualDate.clear();
+ PatientState.clear();
Occupation.clear();
AdditionalPatientHistory.clear();
AdmissionID.clear();
SeriesDescription.clear();
SeriesDescriptionCodeSequence.clear();
OperatorsName.clear();
+ OperatorIdentificationSequence.clear();
ReferencedPerformedProcedureStepSequence.clear();
RequestAttributesSequence.clear();
PerformedProcedureStepID.clear();
DeviceSerialNumber.clear();
SoftwareVersions.clear();
GantryID.clear();
+ UDISequence.clear();
SpatialResolution.clear();
DateOfLastCalibration.clear();
TimeOfLastCalibration.clear();
FractionGroupSummarySequence.clear();
TreatmentSummaryMeasuredDoseReferenceSequence.clear();
TreatmentSummaryCalculatedDoseReferenceSequence.clear();
+ ReferencedImageSequence.clear();
+ ReferencedInstanceSequence.clear();
+ DerivationDescription.clear();
+ DerivationCodeSequence.clear();
+ SourceImageSequence.clear();
+ SourceInstanceSequence.clear();
SOPClassUID.clear();
SOPInstanceUID.clear();
SpecificCharacterSet.clear();
RelatedGeneralSOPClassUID.clear();
OriginalSpecializedSOPClassUID.clear();
CodingSchemeIdentificationSequence.clear();
+ ContextGroupIdentificationSequence.clear();
+ MappingResourceIdentificationSequence.clear();
TimezoneOffsetFromUTC.clear();
ContributingEquipmentSequence.clear();
SOPInstanceStatus.clear();
getAndCheckElementFromDataset(dataset, DeviceSerialNumber, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SoftwareVersions, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, GantryID, "1", "3", "GeneralEquipmentModule");
+ UDISequence.read(dataset, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, SpatialResolution, "1", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, DateOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
getAndCheckElementFromDataset(dataset, TimeOfLastCalibration, "1-n", "3", "GeneralEquipmentModule");
TreatmentSummaryMeasuredDoseReferenceSequence.read(dataset, "1-n", "3", "RTTreatmentSummaryRecordModule");
TreatmentSummaryCalculatedDoseReferenceSequence.read(dataset, "1-n", "3", "RTTreatmentSummaryRecordModule");
+ // --- GeneralReferenceModule (U) ---
+ ReferencedImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ ReferencedInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ getAndCheckElementFromDataset(dataset, DerivationDescription, "1", "3", "GeneralReferenceModule");
+ DerivationCodeSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceImageSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+ SourceInstanceSequence.read(dataset, "1-n", "3", "GeneralReferenceModule");
+
// --- SOPCommonModule (M) ---
getAndCheckElementFromDataset(dataset, SOPClassUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, SOPInstanceUID, "1", "1", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, RelatedGeneralSOPClassUID, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, OriginalSpecializedSOPClassUID, "1", "3", "SOPCommonModule");
CodingSchemeIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ ContextGroupIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
+ MappingResourceIdentificationSequence.read(dataset, "1-n", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, TimezoneOffsetFromUTC, "1", "3", "SOPCommonModule");
ContributingEquipmentSequence.read(dataset, "1-n", "3", "SOPCommonModule");
// getAndCheckElementFromDataset(dataset, InstanceNumber, "1", "3", "SOPCommonModule");
getAndCheckElementFromDataset(dataset, IssuerOfPatientID, "1", "3", "PatientModule");
IssuerOfPatientIDQualifiersSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBirthDate, "1", "2", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientBirthDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientDeathDateInAlternativeCalendar, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, PatientAlternativeCalendar, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientSex, "1", "2", "PatientModule");
ReferencedPatientPhotoSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, QualityControlSubject, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientBreedDescription, "1", "2C", "PatientModule");
PatientBreedCodeSequence.read(dataset, "1-n", "2C", "PatientModule");
BreedRegistrationSequence.read(dataset, "1-n", "2C", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainDescription, "1", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainNomenclature, "1", "3", "PatientModule");
+ StrainCodeSequence.read(dataset, "1-n", "3", "PatientModule");
+ getAndCheckElementFromDataset(dataset, StrainAdditionalInformation, "1", "3", "PatientModule");
+ StrainStockSequence.read(dataset, "1-n", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePerson, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsiblePersonRole, "1", "1C", "PatientModule");
getAndCheckElementFromDataset(dataset, ResponsibleOrganization, "1", "2C", "PatientModule");
getAndCheckElementFromDataset(dataset, PatientIdentityRemoved, "1", "3", "PatientModule");
getAndCheckElementFromDataset(dataset, DeidentificationMethod, "1-n", "1C", "PatientModule");
DeidentificationMethodCodeSequence.read(dataset, "1-n", "1C", "PatientModule");
+ SourcePatientGroupIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
+ GroupOfPatientsIdentificationSequence.read(dataset, "1-n", "3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (dataset.tagExists(DCM_ClinicalTrialSponsorName) ||
getAndCheckElementFromDataset(dataset, PatientAge, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientSize, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, PatientWeight, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientBodyMassIndex, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredAPDimension, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MeasuredLateralDimension, "1", "3", "PatientStudyModule");
PatientSizeCodeSequence.read(dataset, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, MedicalAlerts, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, Allergies, "1-n", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, SmokingStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PregnancyStatus, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, LastMenstrualDate, "1", "3", "PatientStudyModule");
+ getAndCheckElementFromDataset(dataset, PatientState, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, Occupation, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdditionalPatientHistory, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, AdmissionID, "1", "3", "PatientStudyModule");
getAndCheckElementFromDataset(dataset, SeriesDescription, "1", "3", "RTSeriesModule");
SeriesDescriptionCodeSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, OperatorsName, "1-n", "2", "RTSeriesModule");
+ OperatorIdentificationSequence.read(dataset, "1-n", "3", "RTSeriesModule");
ReferencedPerformedProcedureStepSequence.read(dataset, "1-n", "3", "RTSeriesModule");
RequestAttributesSequence.read(dataset, "1-n", "3", "RTSeriesModule");
getAndCheckElementFromDataset(dataset, PerformedProcedureStepID, "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(IssuerOfPatientID), "1", "3", "PatientModule");
if (result.good()) result = IssuerOfPatientIDQualifiersSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmDate(PatientBirthDate), "1", "2", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientBirthDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientDeathDateInAlternativeCalendar), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmCodeString(PatientAlternativeCalendar), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientSex), "1", "2", "PatientModule");
if (result.good()) result = ReferencedPatientPhotoSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(QualityControlSubject), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(PatientBreedDescription), "1", "2C", "PatientModule");
if (result.good()) result = PatientBreedCodeSequence.write(dataset, "1-n" ,"2C", "PatientModule");
if (result.good()) result = BreedRegistrationSequence.write(dataset, "1-n" ,"2C", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedCharacters(StrainDescription), "1", "3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmLongString(StrainNomenclature), "1", "3", "PatientModule");
+ if (result.good()) result = StrainCodeSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ addElementToDataset(result, dataset, new DcmUnlimitedText(StrainAdditionalInformation), "1", "3", "PatientModule");
+ if (result.good()) result = StrainStockSequence.write(dataset, "1-n" ,"3", "PatientModule");
addElementToDataset(result, dataset, new DcmPersonName(ResponsiblePerson), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(ResponsiblePersonRole), "1", "1C", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(ResponsibleOrganization), "1", "2C", "PatientModule");
addElementToDataset(result, dataset, new DcmCodeString(PatientIdentityRemoved), "1", "3", "PatientModule");
addElementToDataset(result, dataset, new DcmLongString(DeidentificationMethod), "1-n", "1C", "PatientModule");
if (result.good()) result = DeidentificationMethodCodeSequence.write(dataset, "1-n" ,"1C", "PatientModule");
+ if (result.good()) result = SourcePatientGroupIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
+ if (result.good()) result = GroupOfPatientsIdentificationSequence.write(dataset, "1-n" ,"3", "PatientModule");
// --- ClinicalTrialSubjectModule (U) ---
if (isClinicalTrialSubjectModulePresent(OFFalse /*complete*/))
addElementToDataset(result, dataset, new DcmAgeString(PatientAge), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientSize), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmDecimalString(PatientWeight), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(PatientBodyMassIndex), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredAPDimension), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDecimalString(MeasuredLateralDimension), "1", "3", "PatientStudyModule");
if (result.good()) result = PatientSizeCodeSequence.write(dataset, "1-n" ,"3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(MedicalAlerts), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(Allergies), "1-n", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmCodeString(SmokingStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmUnsignedShort(PregnancyStatus), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmDate(LastMenstrualDate), "1", "3", "PatientStudyModule");
+ addElementToDataset(result, dataset, new DcmLongString(PatientState), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmShortString(Occupation), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongText(AdditionalPatientHistory), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(AdmissionID), "1", "3", "PatientStudyModule");
addElementToDataset(result, dataset, new DcmLongString(SeriesDescription), "1", "3", "RTSeriesModule");
if (result.good()) result = SeriesDescriptionCodeSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmPersonName(OperatorsName), "1-n", "2", "RTSeriesModule");
+ if (result.good()) result = OperatorIdentificationSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = ReferencedPerformedProcedureStepSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
if (result.good()) result = RequestAttributesSequence.write(dataset, "1-n" ,"3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmShortString(PerformedProcedureStepID), "1", "3", "RTSeriesModule");
addElementToDataset(result, dataset, new DcmLongString(DeviceSerialNumber), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(SoftwareVersions), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmLongString(GantryID), "1", "3", "GeneralEquipmentModule");
+ if (result.good()) result = UDISequence.write(dataset, "1-n" ,"3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDecimalString(SpatialResolution), "1", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmDate(DateOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
addElementToDataset(result, dataset, new DcmTime(TimeOfLastCalibration), "1-n", "3", "GeneralEquipmentModule");
if (result.good()) result = TreatmentSummaryMeasuredDoseReferenceSequence.write(dataset, "1-n" ,"3", "RTTreatmentSummaryRecordModule");
if (result.good()) result = TreatmentSummaryCalculatedDoseReferenceSequence.write(dataset, "1-n" ,"3", "RTTreatmentSummaryRecordModule");
+ // --- GeneralReferenceModule (U) ---
+ if (isGeneralReferenceModulePresent(OFFalse /*complete*/))
+ {
+ if (result.good()) result = ReferencedImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = ReferencedInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ addElementToDataset(result, dataset, new DcmShortText(DerivationDescription), "1", "3", "GeneralReferenceModule");
+ if (result.good()) result = DerivationCodeSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceImageSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ if (result.good()) result = SourceInstanceSequence.write(dataset, "1-n" ,"3", "GeneralReferenceModule");
+ }
+
// --- SOPCommonModule (M) ---
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPClassUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(SOPInstanceUID), "1", "1", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(RelatedGeneralSOPClassUID), "1-n", "3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmUniqueIdentifier(OriginalSpecializedSOPClassUID), "1", "3", "SOPCommonModule");
if (result.good()) result = CodingSchemeIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = ContextGroupIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
+ if (result.good()) result = MappingResourceIdentificationSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
addElementToDataset(result, dataset, new DcmShortString(TimezoneOffsetFromUTC), "1", "3", "SOPCommonModule");
if (result.good()) result = ContributingEquipmentSequence.write(dataset, "1-n" ,"3", "SOPCommonModule");
// addElementToDataset(result, dataset, new DcmIntegerString(InstanceNumber), "1", "3", "SOPCommonModule");
!PatientAge.isEmpty() ||
!PatientSize.isEmpty() ||
!PatientWeight.isEmpty() ||
+ !PatientBodyMassIndex.isEmpty() ||
+ !MeasuredAPDimension.isEmpty() ||
+ !MeasuredLateralDimension.isEmpty() ||
!PatientSizeCodeSequence.isEmpty() ||
+ !MedicalAlerts.isEmpty() ||
+ !Allergies.isEmpty() ||
+ !SmokingStatus.isEmpty() ||
+ !PregnancyStatus.isEmpty() ||
+ !LastMenstrualDate.isEmpty() ||
+ !PatientState.isEmpty() ||
!Occupation.isEmpty() ||
!AdditionalPatientHistory.isEmpty() ||
!AdmissionID.isEmpty() ||
}
+OFBool DRTTreatmentSummaryRecordIOD::isGeneralReferenceModulePresent(const OFBool /*complete*/)
+{
+ /* check whether at least one attribute is present */
+ return !ReferencedImageSequence.isEmpty() ||
+ !ReferencedInstanceSequence.isEmpty() ||
+ !DerivationDescription.isEmpty() ||
+ !DerivationCodeSequence.isEmpty() ||
+ !SourceImageSequence.isEmpty() ||
+ !SourceInstanceSequence.isEmpty();
+}
+
+
OFBool DRTTreatmentSummaryRecordIOD::isCommonInstanceReferenceModulePresent(const OFBool /*complete*/)
{
/* check whether at least one attribute is present */
}
+OFCondition DRTTreatmentSummaryRecordIOD::getAllergies(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(Allergies, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getAuthorizationEquipmentCertificationNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(AuthorizationEquipmentCertificationNumber, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getDerivationDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(DerivationDescription, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getDeviceSerialNumber(OFString &value, const signed long pos) const
{
return getStringValueFromElement(DeviceSerialNumber, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getLastMenstrualDate(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(LastMenstrualDate, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getLongitudinalTemporalInformationModified(OFString &value, const signed long pos) const
{
return getStringValueFromElement(LongitudinalTemporalInformationModified, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getMeasuredAPDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredAPDimension, value, pos);
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::getMeasuredAPDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredAPDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::getMeasuredLateralDimension(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MeasuredLateralDimension, value, pos);
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::getMeasuredLateralDimension(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, MeasuredLateralDimension).getFloat64(value, pos);
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::getMedicalAlerts(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(MedicalAlerts, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getModality(OFString &value, const signed long pos) const
{
return getStringValueFromElement(Modality, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getPatientAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getPatientBirthDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthDate, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getPatientBirthDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBirthDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getPatientBirthTime(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBirthTime, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getPatientBodyMassIndex(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientBodyMassIndex, value, pos);
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::getPatientBodyMassIndex(Float64 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmDecimalString &, PatientBodyMassIndex).getFloat64(value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getPatientBreedDescription(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientBreedDescription, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getPatientDeathDateInAlternativeCalendar(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientDeathDateInAlternativeCalendar, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getPatientID(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientID, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getPatientState(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(PatientState, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getPatientWeight(OFString &value, const signed long pos) const
{
return getStringValueFromElement(PatientWeight, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getPregnancyStatus(Uint16 &value, const unsigned long pos) const
+{
+ return OFconst_cast(DcmUnsignedShort &, PregnancyStatus).getUint16(value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getQualityControlSubject(OFString &value, const signed long pos) const
{
return getStringValueFromElement(QualityControlSubject, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getSmokingStatus(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(SmokingStatus, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getSoftwareVersions(OFString &value, const signed long pos) const
{
return getStringValueFromElement(SoftwareVersions, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::getStrainAdditionalInformation(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainAdditionalInformation, value, pos);
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::getStrainDescription(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainDescription, value, pos);
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::getStrainNomenclature(OFString &value, const signed long pos) const
+{
+ return getStringValueFromElement(StrainNomenclature, value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::getStudyDate(OFString &value, const signed long pos) const
{
return getStringValueFromElement(StudyDate, value, pos);
}
+OFCondition DRTTreatmentSummaryRecordIOD::setAllergies(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = Allergies.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setAuthorizationEquipmentCertificationNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setDerivationDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmShortText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = DerivationDescription.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setDeviceSerialNumber(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setLastMenstrualDate(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = LastMenstrualDate.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setLongitudinalTemporalInformationModified(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setMeasuredAPDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredAPDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::setMeasuredLateralDimension(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = MeasuredLateralDimension.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::setMedicalAlerts(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
+ if (result.good())
+ result = MedicalAlerts.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setModality(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setPatientAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setPatientBirthDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setPatientBirthDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBirthDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setPatientBirthTime(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmTime::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setPatientBodyMassIndex(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientBodyMassIndex.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setPatientBreedDescription(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setPatientDeathDateInAlternativeCalendar(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientDeathDateInAlternativeCalendar.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setPatientID(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setPatientState(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = PatientState.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setPatientWeight(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDecimalString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setPregnancyStatus(const Uint16 value, const unsigned long pos)
+{
+ return PregnancyStatus.putUint16(value, pos);
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setQualityControlSubject(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setSmokingStatus(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = SmokingStatus.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setSoftwareVersions(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1-n") : EC_Normal;
}
+OFCondition DRTTreatmentSummaryRecordIOD::setStrainAdditionalInformation(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = StrainAdditionalInformation.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::setStrainDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmUnlimitedCharacters::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainDescription.putOFStringArray(value);
+ return result;
+}
+
+
+OFCondition DRTTreatmentSummaryRecordIOD::setStrainNomenclature(const OFString &value, const OFBool check)
+{
+ OFCondition result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = StrainNomenclature.putOFStringArray(value);
+ return result;
+}
+
+
OFCondition DRTTreatmentSummaryRecordIOD::setStudyDate(const OFString &value, const OFBool check)
{
OFCondition result = (check) ? DcmDate::checkStringValue(value, "1") : EC_Normal;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTTreatmentSummaryCalculatedDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTTreatmentSessionIonBeamSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
BeamName(DCM_BeamName),
BeamType(DCM_BeamType),
CurrentFractionNumber(DCM_CurrentFractionNumber),
+ DeliveredDepthDoseParametersSequence(emptyDefaultItem /*emptyDefaultSequence*/),
DeliveredPrimaryMeterset(DCM_DeliveredPrimaryMeterset),
DeliveredSecondaryMeterset(DCM_DeliveredSecondaryMeterset),
DeliveredTreatmentTime(DCM_DeliveredTreatmentTime),
+ FixationEye(DCM_FixationEye),
FixationLightAzimuthalAngle(DCM_FixationLightAzimuthalAngle),
FixationLightPolarAngle(DCM_FixationLightPolarAngle),
GeneralAccessorySequence(emptyDefaultItem /*emptyDefaultSequence*/),
IonControlPointDeliverySequence(emptyDefaultItem /*emptyDefaultSequence*/),
+ ModulatedScanModeType(DCM_ModulatedScanModeType),
NumberOfBlocks(DCM_NumberOfBlocks),
NumberOfBoli(DCM_NumberOfBoli),
NumberOfCompensators(DCM_NumberOfCompensators),
BeamName(copy.BeamName),
BeamType(copy.BeamType),
CurrentFractionNumber(copy.CurrentFractionNumber),
+ DeliveredDepthDoseParametersSequence(copy.DeliveredDepthDoseParametersSequence),
DeliveredPrimaryMeterset(copy.DeliveredPrimaryMeterset),
DeliveredSecondaryMeterset(copy.DeliveredSecondaryMeterset),
DeliveredTreatmentTime(copy.DeliveredTreatmentTime),
+ FixationEye(copy.FixationEye),
FixationLightAzimuthalAngle(copy.FixationLightAzimuthalAngle),
FixationLightPolarAngle(copy.FixationLightPolarAngle),
GeneralAccessorySequence(copy.GeneralAccessorySequence),
IonControlPointDeliverySequence(copy.IonControlPointDeliverySequence),
+ ModulatedScanModeType(copy.ModulatedScanModeType),
NumberOfBlocks(copy.NumberOfBlocks),
NumberOfBoli(copy.NumberOfBoli),
NumberOfCompensators(copy.NumberOfCompensators),
BeamName = copy.BeamName;
BeamType = copy.BeamType;
CurrentFractionNumber = copy.CurrentFractionNumber;
+ DeliveredDepthDoseParametersSequence = copy.DeliveredDepthDoseParametersSequence;
DeliveredPrimaryMeterset = copy.DeliveredPrimaryMeterset;
DeliveredSecondaryMeterset = copy.DeliveredSecondaryMeterset;
DeliveredTreatmentTime = copy.DeliveredTreatmentTime;
+ FixationEye = copy.FixationEye;
FixationLightAzimuthalAngle = copy.FixationLightAzimuthalAngle;
FixationLightPolarAngle = copy.FixationLightPolarAngle;
GeneralAccessorySequence = copy.GeneralAccessorySequence;
IonControlPointDeliverySequence = copy.IonControlPointDeliverySequence;
+ ModulatedScanModeType = copy.ModulatedScanModeType;
NumberOfBlocks = copy.NumberOfBlocks;
NumberOfBoli = copy.NumberOfBoli;
NumberOfCompensators = copy.NumberOfCompensators;
RadiationAtomicNumber.clear();
RadiationChargeState.clear();
ScanMode.clear();
+ ModulatedScanModeType.clear();
ReferencedToleranceTableNumber.clear();
BeamLimitingDeviceLeafPairsSequence.clear();
ReferencedPatientSetupNumber.clear();
PatientSupportAccessoryCode.clear();
FixationLightAzimuthalAngle.clear();
FixationLightPolarAngle.clear();
+ FixationEye.clear();
CurrentFractionNumber.clear();
TreatmentDeliveryType.clear();
TreatmentTerminationStatus.clear();
DeliveredSecondaryMeterset.clear();
SpecifiedTreatmentTime.clear();
DeliveredTreatmentTime.clear();
+ DeliveredDepthDoseParametersSequence.clear();
NumberOfControlPoints.clear();
IonControlPointDeliverySequence.clear();
}
RadiationAtomicNumber.isEmpty() &&
RadiationChargeState.isEmpty() &&
ScanMode.isEmpty() &&
+ ModulatedScanModeType.isEmpty() &&
ReferencedToleranceTableNumber.isEmpty() &&
BeamLimitingDeviceLeafPairsSequence.isEmpty() &&
ReferencedPatientSetupNumber.isEmpty() &&
PatientSupportAccessoryCode.isEmpty() &&
FixationLightAzimuthalAngle.isEmpty() &&
FixationLightPolarAngle.isEmpty() &&
+ FixationEye.isEmpty() &&
CurrentFractionNumber.isEmpty() &&
TreatmentDeliveryType.isEmpty() &&
TreatmentTerminationStatus.isEmpty() &&
DeliveredSecondaryMeterset.isEmpty() &&
SpecifiedTreatmentTime.isEmpty() &&
DeliveredTreatmentTime.isEmpty() &&
+ DeliveredDepthDoseParametersSequence.isEmpty() &&
NumberOfControlPoints.isEmpty() &&
IonControlPointDeliverySequence.isEmpty();
}
getAndCheckElementFromDataset(item, RadiationAtomicNumber, "1", "1C", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, RadiationChargeState, "1", "1C", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, ScanMode, "1", "1", "TreatmentSessionIonBeamSequence");
+ getAndCheckElementFromDataset(item, ModulatedScanModeType, "1", "1C", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, ReferencedToleranceTableNumber, "1", "3", "TreatmentSessionIonBeamSequence");
BeamLimitingDeviceLeafPairsSequence.read(item, "1-n", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, ReferencedPatientSetupNumber, "1", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, PatientSupportAccessoryCode, "1", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, FixationLightAzimuthalAngle, "1", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, FixationLightPolarAngle, "1", "3", "TreatmentSessionIonBeamSequence");
+ getAndCheckElementFromDataset(item, FixationEye, "1", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, CurrentFractionNumber, "1", "2", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, TreatmentDeliveryType, "1", "2", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, TreatmentTerminationStatus, "1", "1", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, DeliveredSecondaryMeterset, "1", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, SpecifiedTreatmentTime, "1", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, DeliveredTreatmentTime, "1", "3", "TreatmentSessionIonBeamSequence");
+ DeliveredDepthDoseParametersSequence.read(item, "1-n", "3", "TreatmentSessionIonBeamSequence");
getAndCheckElementFromDataset(item, NumberOfControlPoints, "1", "1", "TreatmentSessionIonBeamSequence");
IonControlPointDeliverySequence.read(item, "1-n", "1", "TreatmentSessionIonBeamSequence");
result = EC_Normal;
addElementToDataset(result, item, new DcmIntegerString(RadiationAtomicNumber), "1", "1C", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmSignedShort(RadiationChargeState), "1", "1C", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmCodeString(ScanMode), "1", "1", "TreatmentSessionIonBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(ModulatedScanModeType), "1", "1C", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(ReferencedToleranceTableNumber), "1", "3", "TreatmentSessionIonBeamSequence");
if (result.good()) result = BeamLimitingDeviceLeafPairsSequence.write(item, "1-n", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(ReferencedPatientSetupNumber), "1", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmLongString(PatientSupportAccessoryCode), "1", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(FixationLightAzimuthalAngle), "1", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmFloatingPointSingle(FixationLightPolarAngle), "1", "3", "TreatmentSessionIonBeamSequence");
+ addElementToDataset(result, item, new DcmCodeString(FixationEye), "1", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(CurrentFractionNumber), "1", "2", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmCodeString(TreatmentDeliveryType), "1", "2", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmCodeString(TreatmentTerminationStatus), "1", "1", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(DeliveredSecondaryMeterset), "1", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(SpecifiedTreatmentTime), "1", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmDecimalString(DeliveredTreatmentTime), "1", "3", "TreatmentSessionIonBeamSequence");
+ if (result.good()) result = DeliveredDepthDoseParametersSequence.write(item, "1-n", "3", "TreatmentSessionIonBeamSequence");
addElementToDataset(result, item, new DcmIntegerString(NumberOfControlPoints), "1", "1", "TreatmentSessionIonBeamSequence");
if (result.good()) result = IonControlPointDeliverySequence.write(item, "1-n", "1", "TreatmentSessionIonBeamSequence");
}
}
+OFCondition DRTTreatmentSessionIonBeamSequence::Item::getFixationEye(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(FixationEye, value, pos);
+}
+
+
OFCondition DRTTreatmentSessionIonBeamSequence::Item::getFixationLightAzimuthalAngle(Float32 &value, const unsigned long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTTreatmentSessionIonBeamSequence::Item::getModulatedScanModeType(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(ModulatedScanModeType, value, pos);
+}
+
+
OFCondition DRTTreatmentSessionIonBeamSequence::Item::getNumberOfBlocks(OFString &value, const signed long pos) const
{
if (EmptyDefaultItem)
}
+OFCondition DRTTreatmentSessionIonBeamSequence::Item::setFixationEye(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = FixationEye.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTTreatmentSessionIonBeamSequence::Item::setFixationLightAzimuthalAngle(const Float32 value, const unsigned long pos)
{
if (EmptyDefaultItem)
}
+OFCondition DRTTreatmentSessionIonBeamSequence::Item::setModulatedScanModeType(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmCodeString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = ModulatedScanModeType.putOFStringArray(value);
+ }
+ return result;
+}
+
+
OFCondition DRTTreatmentSessionIonBeamSequence::Item::setNumberOfBlocks(const OFString &value, const OFBool check)
{
OFCondition result = EC_IllegalCall;
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTTreatmentSummaryMeasuredDoseReferenceSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTToleranceTableSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
--- /dev/null
+/*
+ *
+ * Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * Source file for class DRTUDISequence
+ *
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" // make sure OS specific configuration is included first
+
+#include "dcmtk/dcmrt/seq/drtudis.h"
+
+
+// --- item class ---
+
+DRTUDISequence::Item::Item(const OFBool emptyDefaultItem)
+ : EmptyDefaultItem(emptyDefaultItem),
+ DeviceDescription(DCM_DeviceDescription),
+ UniqueDeviceIdentifier(DCM_UniqueDeviceIdentifier)
+{
+}
+
+
+DRTUDISequence::Item::Item(const Item ©)
+ : EmptyDefaultItem(copy.EmptyDefaultItem),
+ DeviceDescription(copy.DeviceDescription),
+ UniqueDeviceIdentifier(copy.UniqueDeviceIdentifier)
+{
+}
+
+
+DRTUDISequence::Item::~Item()
+{
+}
+
+
+DRTUDISequence::Item &DRTUDISequence::Item::operator=(const Item ©)
+{
+ if (this != ©)
+ {
+ EmptyDefaultItem = copy.EmptyDefaultItem;
+ DeviceDescription = copy.DeviceDescription;
+ UniqueDeviceIdentifier = copy.UniqueDeviceIdentifier;
+ }
+ return *this;
+}
+
+
+void DRTUDISequence::Item::clear()
+{
+ if (!EmptyDefaultItem)
+ {
+ /* clear all DICOM attributes */
+ UniqueDeviceIdentifier.clear();
+ DeviceDescription.clear();
+ }
+}
+
+
+OFBool DRTUDISequence::Item::isEmpty()
+{
+ return UniqueDeviceIdentifier.isEmpty() &&
+ DeviceDescription.isEmpty();
+}
+
+
+OFBool DRTUDISequence::Item::isValid() const
+{
+ return !EmptyDefaultItem;
+}
+
+
+OFCondition DRTUDISequence::Item::read(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ /* re-initialize object */
+ clear();
+ getAndCheckElementFromDataset(item, UniqueDeviceIdentifier, "1", "1", "UDISequence");
+ getAndCheckElementFromDataset(item, DeviceDescription, "1", "3", "UDISequence");
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::Item::write(DcmItem &item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = EC_Normal;
+ addElementToDataset(result, item, new DcmUnlimitedText(UniqueDeviceIdentifier), "1", "1", "UDISequence");
+ addElementToDataset(result, item, new DcmLongString(DeviceDescription), "1", "3", "UDISequence");
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::Item::getDeviceDescription(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(DeviceDescription, value, pos);
+}
+
+
+OFCondition DRTUDISequence::Item::getUniqueDeviceIdentifier(OFString &value, const signed long pos) const
+{
+ if (EmptyDefaultItem)
+ return EC_IllegalCall;
+ else
+ return getStringValueFromElement(UniqueDeviceIdentifier, value, pos);
+}
+
+
+OFCondition DRTUDISequence::Item::setDeviceDescription(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmLongString::checkStringValue(value, "1") : EC_Normal;
+ if (result.good())
+ result = DeviceDescription.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::Item::setUniqueDeviceIdentifier(const OFString &value, const OFBool check)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultItem)
+ {
+ result = (check) ? DcmUnlimitedText::checkStringValue(value) : EC_Normal;
+ if (result.good())
+ result = UniqueDeviceIdentifier.putOFStringArray(value);
+ }
+ return result;
+}
+
+
+// --- sequence class ---
+
+DRTUDISequence::DRTUDISequence(const OFBool emptyDefaultSequence)
+ : EmptyDefaultSequence(emptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ CurrentItem = SequenceOfItems.end();
+}
+
+
+DRTUDISequence::DRTUDISequence(const DRTUDISequence ©)
+ : EmptyDefaultSequence(copy.EmptyDefaultSequence),
+ SequenceOfItems(),
+ CurrentItem(),
+ EmptyItem(OFTrue /*emptyDefaultItem*/)
+{
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+}
+
+
+DRTUDISequence &DRTUDISequence::operator=(const DRTUDISequence ©)
+{
+ if (this != ©)
+ {
+ clear();
+ EmptyDefaultSequence = copy.EmptyDefaultSequence;
+ /* create a copy of the internal sequence of items */
+ Item *item = NULL;
+ OFListConstIterator(Item *) current = copy.SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = copy.SequenceOfItems.end();
+ while (current != last)
+ {
+ item = new Item(**current);
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ } else {
+ /* memory exhausted, there is nothing we can do about it */
+ break;
+ }
+ ++current;
+ }
+ CurrentItem = SequenceOfItems.begin();
+ }
+ return *this;
+}
+
+
+DRTUDISequence::~DRTUDISequence()
+{
+ clear();
+}
+
+
+void DRTUDISequence::clear()
+{
+ if (!EmptyDefaultSequence)
+ {
+ CurrentItem = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* delete all items and free memory */
+ while (CurrentItem != last)
+ {
+ delete (*CurrentItem);
+ CurrentItem = SequenceOfItems.erase(CurrentItem);
+ }
+ /* make sure that the list is empty */
+ SequenceOfItems.clear();
+ CurrentItem = SequenceOfItems.end();
+ }
+}
+
+
+OFBool DRTUDISequence::isEmpty()
+{
+ return SequenceOfItems.empty();
+}
+
+
+OFBool DRTUDISequence::isValid() const
+{
+ return !EmptyDefaultSequence;
+}
+
+
+unsigned long DRTUDISequence::getNumberOfItems() const
+{
+ return SequenceOfItems.size();
+}
+
+
+OFCondition DRTUDISequence::gotoFirstItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ CurrentItem = SequenceOfItems.begin();
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::gotoNextItem()
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ ++CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::gotoItem(const unsigned long num, OFListIterator(Item *) &iterator)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::gotoItem(const unsigned long num, OFListConstIterator(Item *) &iterator) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (!SequenceOfItems.empty())
+ {
+ unsigned long idx = num + 1;
+ iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ while ((--idx > 0) && (iterator != last))
+ ++iterator;
+ /* specified list item found? */
+ if ((idx == 0) && (iterator != last))
+ result = EC_Normal;
+ else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::gotoItem(const unsigned long num)
+{
+ return gotoItem(num, CurrentItem);
+}
+
+
+OFCondition DRTUDISequence::getCurrentItem(Item *&item) const
+{
+ OFCondition result = EC_IllegalCall;
+ if (CurrentItem != SequenceOfItems.end())
+ {
+ item = *CurrentItem;
+ result = EC_Normal;
+ }
+ return result;
+}
+
+
+DRTUDISequence::Item &DRTUDISequence::getCurrentItem()
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+const DRTUDISequence::Item &DRTUDISequence::getCurrentItem() const
+{
+ if (CurrentItem != SequenceOfItems.end())
+ return **CurrentItem;
+ else
+ return EmptyItem;
+}
+
+
+OFCondition DRTUDISequence::getItem(const unsigned long num, Item *&item)
+{
+ OFListIterator(Item *) iterator;
+ OFCondition result = gotoItem(num, iterator);
+ if (result.good())
+ item = *iterator;
+ return result;
+}
+
+
+DRTUDISequence::Item &DRTUDISequence::getItem(const unsigned long num)
+{
+ OFListIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+const DRTUDISequence::Item &DRTUDISequence::getItem(const unsigned long num) const
+{
+ OFListConstIterator(Item *) iterator;
+ if (gotoItem(num, iterator).good())
+ return **iterator;
+ else
+ return EmptyItem;
+}
+
+
+DRTUDISequence::Item &DRTUDISequence::operator[](const unsigned long num)
+{
+ return getItem(num);
+}
+
+
+const DRTUDISequence::Item &DRTUDISequence::operator[](const unsigned long num) const
+{
+ return getItem(num);
+}
+
+
+OFCondition DRTUDISequence::addItem(Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.push_back(item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::insertItem(const unsigned long pos, Item *&item)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ result = gotoItem(pos, iterator);
+ if (result.good())
+ {
+ item = new Item();
+ if (item != NULL)
+ {
+ SequenceOfItems.insert(iterator, 1, item);
+ result = EC_Normal;
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = addItem(item);
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::removeItem(const unsigned long pos)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ OFListIterator(Item *) iterator;
+ if (gotoItem(pos, iterator).good())
+ {
+ delete *iterator;
+ iterator = SequenceOfItems.erase(iterator);
+ result = EC_Normal;
+ } else
+ result = EC_IllegalParameter;
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::read(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ /* re-initialize object */
+ clear();
+ /* retrieve sequence element from dataset */
+ DcmSequenceOfItems *sequence;
+ result = dataset.findAndGetSequence(DCM_UDISequence, sequence);
+ if (sequence != NULL)
+ {
+ if (checkElementValue(*sequence, card, type, result, moduleName))
+ {
+ DcmStack stack;
+ OFBool first = OFTrue;
+ /* iterate over all sequence items */
+ while (result.good() && sequence->nextObject(stack, first /*intoSub*/).good())
+ {
+ DcmItem *ditem = OFstatic_cast(DcmItem *, stack.top());
+ if (ditem != NULL)
+ {
+ Item *item = new Item();
+ if (item != NULL)
+ {
+ result = item->read(*ditem);
+ if (result.good())
+ {
+ /* append new item to the end of the list */
+ SequenceOfItems.push_back(item);
+ first = OFFalse;
+ }
+ } else
+ result = EC_MemoryExhausted;
+ } else
+ result = EC_CorruptedData;
+ }
+ }
+ } else {
+ DcmSequenceOfItems element(DCM_UDISequence);
+ checkElementValue(element, card, type, result, moduleName);
+ }
+ }
+ return result;
+}
+
+
+OFCondition DRTUDISequence::write(DcmItem &dataset,
+ const OFString &card,
+ const OFString &type,
+ const char *moduleName)
+{
+ OFCondition result = EC_IllegalCall;
+ if (!EmptyDefaultSequence)
+ {
+ result = EC_MemoryExhausted;
+ DcmSequenceOfItems *sequence = new DcmSequenceOfItems(DCM_UDISequence);
+ if (sequence != NULL)
+ {
+ result = EC_Normal;
+ /* an empty optional sequence is not written */
+ if ((type == "2") || !SequenceOfItems.empty())
+ {
+ OFListIterator(Item *) iterator = SequenceOfItems.begin();
+ const OFListConstIterator(Item *) last = SequenceOfItems.end();
+ /* iterate over all sequence items */
+ while (result.good() && (iterator != last))
+ {
+ DcmItem *item = new DcmItem();
+ if (item != NULL)
+ {
+ /* append new item to the end of the sequence */
+ result = sequence->append(item);
+ if (result.good())
+ {
+ result = (*iterator)->write(*item);
+ ++iterator;
+ } else
+ delete item;
+ } else
+ result = EC_MemoryExhausted;
+ }
+ if (result.good())
+ {
+ /* insert sequence element into the dataset */
+ result = dataset.insert(sequence, OFTrue /*replaceOld*/);
+ }
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ if (result.good())
+ {
+ /* forget reference to sequence object (avoid deletion below) */
+ sequence = NULL;
+ }
+ }
+ else if (type == "1")
+ {
+ /* empty type 1 sequence not allowed */
+ result = RT_EC_InvalidValue;
+ if (DCM_dcmrtLogger.isEnabledFor(OFLogger::WARN_LOG_LEVEL))
+ checkElementValue(*sequence, card, type, result, moduleName);
+ }
+ /* delete sequence (if not inserted into the dataset) */
+ delete sequence;
+ }
+ }
+ return result;
+}
+
+
+// end of source file
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTVOILUTSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTWedgePositionSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTWADORetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTWADORSRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTWedgeSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
/*
*
* Copyright (C) 2008-2012, OFFIS e.V. and ICSMED AG, Oldenburg, Germany
- * Copyright (C) 2013-2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2013-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class DRTXDSRetrievalSequence
*
- * Generated automatically from DICOM PS 3.3-2015c
- * File created on 2015-12-07 16:29:33
+ * Generated automatically from DICOM PS 3.3-2016d
+ * File created on 2016-10-12 13:44:31
*
*/
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
../include/dcmtk/dcmrt/seq/drteas.h ../include/dcmtk/dcmrt/seq/drtfes.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtiis.h ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmls.h \
- ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
- ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtmls.h ../include/dcmtk/dcmrt/seq/drtoas.h \
+ ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h \
../include/dcmtk/dcmrt/seq/drtpsics.h \
../include/dcmtk/dcmrt/seq/drtpscs.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpsss.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
- ../include/dcmtk/dcmrt/seq/drtrcs.h ../include/dcmtk/dcmrt/seq/drtcs.h \
- ../include/dcmtk/dcmrt/seq/drtcis.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h ../include/dcmtk/dcmrt/seq/drtrcs.h \
+ ../include/dcmtk/dcmrt/seq/drtcs.h ../include/dcmtk/dcmrt/seq/drtcis.h \
../include/dcmtk/dcmrt/seq/drtrdros.h \
../include/dcmtk/dcmrt/seq/drtrwvms.h \
../include/dcmtk/dcmrt/seq/drtqds.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
../include/dcmtk/dcmrt/seq/drtrfors.h \
../include/dcmtk/dcmrt/seq/drtrsts.h \
- ../include/dcmtk/dcmrt/seq/drtrses.h \
- ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
+ ../include/dcmtk/dcmrt/seq/drtrses.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../include/dcmtk/dcmrt/seq/drtssrs.h \
- ../include/dcmtk/dcmrt/seq/drtscris.h ../include/dcmtk/dcmrt/drtimage.h \
+ ../include/dcmtk/dcmrt/seq/drtscris.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h ../include/dcmtk/dcmrt/drtimage.h \
../include/dcmtk/dcmrt/seq/drtcbars.h \
../include/dcmtk/dcmrt/seq/drtads.h ../include/dcmtk/dcmrt/seq/drtbas.h \
../include/dcmtk/dcmrt/seq/drtds.h ../include/dcmtk/dcmrt/seq/drtes.h \
../include/dcmtk/dcmrt/seq/drtbl5.h ../include/dcmtk/dcmrt/seq/drtgas.h \
../include/dcmtk/dcmrt/seq/drtpfms.h ../include/dcmtk/dcmrt/seq/drtfms.h \
../include/dcmtk/dcmrt/seq/drtmacds.h \
- ../include/dcmtk/dcmrt/seq/drtcss.h \
+ ../include/dcmtk/dcmrt/seq/drtcss.h ../include/dcmtk/dcmrt/seq/drtrims.h \
../include/dcmtk/dcmrt/seq/drtrrtps5.h \
+ ../include/dcmtk/dcmrt/seq/drtsis.h ../include/dcmtk/dcmrt/seq/drtsins.h \
../include/dcmtk/dcmrt/seq/drtvls.h ../include/dcmtk/dcmrt/drtplan.h \
../include/dcmtk/dcmrt/seq/drtass.h ../include/dcmtk/dcmrt/seq/drtbads.h \
../include/dcmtk/dcmrt/seq/drtchs.h ../include/dcmtk/dcmrt/seq/drtbcps.h \
../include/dcmtk/dcmrt/seq/drtbldts.h \
../include/dcmtk/dcmrt/seq/drttms9.h ../include/dcmtk/dcmrt/drtstrct.h \
../include/dcmtk/dcmrt/seq/drtrros.h \
- ../include/dcmtk/dcmrt/seq/drtarics.h \
../include/dcmtk/dcmrt/seq/drtrpps.h \
../include/dcmtk/dcmrt/seq/drtrecs.h \
- ../include/dcmtk/dcmrt/seq/drtrics.h ../include/dcmtk/dcmrt/seq/drtrrs.h \
+ ../include/dcmtk/dcmrt/seq/drtrics.h \
+ ../include/dcmtk/dcmrt/seq/drtsptcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrrs.h \
../include/dcmtk/dcmrt/seq/drtrrros.h \
../include/dcmtk/dcmrt/seq/drtspccs.h ../include/dcmtk/dcmrt/drttreat.h \
../include/dcmtk/dcmrt/seq/drtfgss.h \
../include/dcmtk/dcmrt/seq/drtcsis.h \
../include/dcmtk/dcmrt/seq/drtcctus.h \
../include/dcmtk/dcmrt/seq/drtcpis.h ../include/dcmtk/dcmrt/seq/drtics.h \
- ../include/dcmtk/dcmrt/seq/drtpics.h ../include/dcmtk/dcmrt/seq/drtces.h \
+ ../include/dcmtk/dcmrt/seq/drtpics.h \
+ ../include/dcmtk/dcmrt/seq/drtcgis.h ../include/dcmtk/dcmrt/seq/drtces.h \
../include/dcmtk/dcmrt/seq/drtois.h \
../include/dcmtk/dcmrt/seq/drtporcs.h \
../include/dcmtk/dcmrt/seq/drtcsas.h \
../include/dcmtk/dcmrt/seq/drtdimcs.h \
- ../include/dcmtk/dcmrt/seq/drtdss.h \
+ ../include/dcmtk/dcmrt/seq/drtdcs.h ../include/dcmtk/dcmrt/seq/drtdss.h \
../include/dcmtk/dcmrt/seq/drtdspcs.h \
../include/dcmtk/dcmrt/seq/drtdrs.h ../include/dcmtk/dcmrt/seq/drteas.h \
../include/dcmtk/dcmrt/seq/drtfgs.h ../include/dcmtk/dcmrt/seq/drtrbs8.h \
../include/dcmtk/dcmrt/seq/drtbvcps.h \
../include/dcmtk/dcmrt/seq/drtrbas8.h \
../include/dcmtk/dcmrt/seq/drtrdrs8.h \
- ../include/dcmtk/dcmrt/seq/drthsdrs.h \
- ../include/dcmtk/dcmrt/seq/drtians.h \
- ../include/dcmtk/dcmrt/seq/drtiais.h \
+ ../include/dcmtk/dcmrt/seq/drtgpis.h \
../include/dcmtk/dcmrt/seq/drtipiqs.h \
../include/dcmtk/dcmrt/seq/drtaadcs.h \
../include/dcmtk/dcmrt/seq/drtafs.h ../include/dcmtk/dcmrt/seq/drtajcs.h \
+ ../include/dcmtk/dcmrt/seq/drthsdrs.h \
+ ../include/dcmtk/dcmrt/seq/drtians.h \
+ ../include/dcmtk/dcmrt/seq/drtiais.h \
../include/dcmtk/dcmrt/seq/drtiseis.h \
- ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtoas.h \
- ../include/dcmtk/dcmrt/seq/drtmas.h ../include/dcmtk/dcmrt/seq/drtopis.h \
+ ../include/dcmtk/dcmrt/seq/drtmps.h ../include/dcmtk/dcmrt/seq/drtmris.h \
+ ../include/dcmtk/dcmrt/seq/drtoas.h ../include/dcmtk/dcmrt/seq/drtmas.h \
+ ../include/dcmtk/dcmrt/seq/drtopis.h \
../include/dcmtk/dcmrt/seq/drtpbcs.h ../include/dcmtk/dcmrt/seq/drtpss.h \
../include/dcmtk/dcmrt/seq/drtfds.h ../include/dcmtk/dcmrt/seq/drtmss.h \
../include/dcmtk/dcmrt/seq/drtrsis.h ../include/dcmtk/dcmrt/seq/drtsds.h \
../include/dcmtk/dcmrt/seq/drtporis.h \
../include/dcmtk/dcmrt/seq/drtprsis.h \
../include/dcmtk/dcmrt/seq/drtpdecs.h \
- ../include/dcmtk/dcmrt/seq/drtdias.h ../include/dcmtk/dcmrt/seq/drtpcs.h \
+ ../include/dcmtk/dcmrt/seq/drtdias.h \
+ ../include/dcmtk/dcmrt/seq/drtpdeds.h \
+ ../include/dcmtk/dcmrt/seq/drtpcs.h \
../include/dcmtk/dcmrt/seq/drtrppcs.h \
+ ../include/dcmtk/dcmrt/seq/drtrims.h ../include/dcmtk/dcmrt/seq/drtris.h \
../include/dcmtk/dcmrt/seq/drtrpphs.h \
../include/dcmtk/dcmrt/seq/drtdimrs.h \
../include/dcmtk/dcmrt/seq/drtdirs.h \
../include/dcmtk/dcmrt/seq/drtrppss.h \
../include/dcmtk/dcmrt/seq/drtrrtps3.h \
../include/dcmtk/dcmrt/seq/drtrsers.h \
- ../include/dcmtk/dcmrt/seq/drtris.h ../include/dcmtk/dcmrt/seq/drtrsss.h \
- ../include/dcmtk/dcmrt/seq/drtrss.h ../include/dcmtk/dcmrt/seq/drtrpis.h \
- ../include/dcmtk/dcmrt/seq/drtras.h \
+ ../include/dcmtk/dcmrt/seq/drtrsss.h ../include/dcmtk/dcmrt/seq/drtrss.h \
+ ../include/dcmtk/dcmrt/seq/drtrpis.h ../include/dcmtk/dcmrt/seq/drtras.h \
../include/dcmtk/dcmrt/seq/drtrrpcs.h \
../include/dcmtk/dcmrt/seq/drtrpcs.h \
../include/dcmtk/dcmrt/seq/drtspcs.h \
../include/dcmtk/dcmrt/seq/drtrscs.h \
- ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtss.h \
+ ../include/dcmtk/dcmrt/seq/drtsdcs.h ../include/dcmtk/dcmrt/seq/drtsis.h \
+ ../include/dcmtk/dcmrt/seq/drtsins.h \
+ ../include/dcmtk/dcmrt/seq/drtspgis.h ../include/dcmtk/dcmrt/seq/drtss.h \
+ ../include/dcmtk/dcmrt/seq/drtscs.h ../include/dcmtk/dcmrt/seq/drtsss.h \
+ ../include/dcmtk/dcmrt/seq/drtssrcs.h \
../include/dcmtk/dcmrt/seq/drtscris.h \
../include/dcmtk/dcmrt/seq/drttts.h \
../include/dcmtk/dcmrt/seq/drtbldts.h \
- ../include/dcmtk/dcmrt/seq/drttms9.h
+ ../include/dcmtk/dcmrt/seq/drttms9.h \
+ ../include/dcmtk/dcmrt/seq/drtudis.h
#include "dcmtk/ofstd/ofvector.h" // for OFVector
#include "dcmtk/dcmiod/iodimage.h" // common image IOD attribute access
#include "dcmtk/dcmiod/iodmacro.h"
+#include "dcmtk/dcmiod/modimagepixel.h"
#include "dcmtk/dcmiod/modsegmentationseries.h" // for segmentation series module
#include "dcmtk/dcmiod/modenhequipment.h" // for enhanced general equipment module
/** Class representing an object of the "Segmentation SOP Class".
*/
class DCMTK_DCMSEG_EXPORT DcmSegmentation
-: public DcmIODImage
+: public DcmIODImage<IODImagePixelModule<Uint8> >
{
public:
// -------------------- loading and saving ---------------------
- /** Load Segmentation object from item file
+ /** Load Segmentation object from file
* @param filename The file to read from
* @param segmentation The resulting segmentation object. NULL if dataset
* could not be read successfully.
static OFCondition loadFile(const OFString& filename,
DcmSegmentation*& segmentation);
- /** Load Segmentation object from item object.
+ /** Load Segmentation object from dataset object.
* @param dataset The dataset to read from
* @param segmentation The resulting segmentation object. NULL if dataset
* could not be read successfully.
static FGDerivationImage* createDerivationImageFG(const OFVector<ImageSOPInstanceReferenceMacro>& derivationImages,
const OFString& derivationDescription);
- /** Take over general information for Patient, Study, Series and/or Frame of Reference
- * from existing file
- * @param filename The filename to read from
- * @param usePatient If OFTrue, Patient level information is imported
- * @param useStudy If OFTrue, Study level information is imported
- * @param useSeries If OFTrue, Series level information is imported
- * @param useFoR If OFTrue, Frame of Reference information is imported
- * @return EC_Normal if reading was successful (i.e.\ if any information could
- * be read), otherwise an error is returned
- */
- OFCondition importPatientStudyFoR(const OFString& filename,
- const OFBool usePatient,
- const OFBool useStudy,
- const OFBool useSeries,
- const OFBool useFoR = OFFalse);
-
// -------------------- access ---------------------
/** Get number of frames, based on the number of items in the shared
Uint16& segmentNumber);
/** Add a functional group for all frames
- * @param group The group to be added as shared functional group
+ * @param group The group to be added as shared functional group. The
* @return EC_Normal if adding was successful, error otherwise
*/
virtual OFCondition addForAllFrames(const FGBase& group);
* @param segmentNumber The logical segment number (>=1) this frame refers to.
* The segment identified by the segmentNumber must already exist.
* @param perFrameInformation The functional groups that identify this frame (i.e.
- * which are planned to be not common for all other frames)
+ * which are planned to be not common for all other frames). The
+ * functional groups are copied, so ownership of each group stays
+ * with the caller no matter what the method returns.
* @return EC_Normal if adding was successful, error otherwise
*/
virtual OFCondition addFrame(Uint8* pixData,
* the image pixel module manually.
* @return The Image Pixel Module
*/
- virtual IODImagePixelModule& getImagePixel();
+ virtual IODImagePixelModule<Uint8>& getImagePixel();
/** Initialize IOD rules
*/
../include/dcmtk/dcmseg/segdoc.h \
../../ofstd/include/dcmtk/ofstd/ofvector.h \
../../dcmiod/include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofutil.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
../../dcmiod/include/dcmtk/dcmiod/iodcommn.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofstring.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
- ../../ofstd/include/dcmtk/ofstd/ofutil.h \
- ../../ofstd/include/dcmtk/ofstd/oftraits.h \
- ../../ofstd/include/dcmtk/ofstd/variadic/tuplefwd.h \
../../ofstd/include/dcmtk/ofstd/oflist.h \
../../ofstd/include/dcmtk/ofstd/ofcond.h \
../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \
../../dcmiod/include/dcmtk/dcmiod/modbase.h \
../../dcmiod/include/dcmtk/dcmiod/modpatientstudy.h \
../../ofstd/include/dcmtk/ofstd/ofoption.h \
- ../../ofstd/include/dcmtk/ofstd/ofalign.h \
../../dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h \
../../dcmiod/include/dcmtk/dcmiod/iodmacro.h \
../../dcmiod/include/dcmtk/dcmiod/modequipment.h \
../../dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h \
../../dcmiod/include/dcmtk/dcmiod/iodreferences.h \
../../dcmiod/include/dcmtk/dcmiod/modgeneralimage.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h \
../../dcmiod/include/dcmtk/dcmiod/modimagepixel.h \
../../dcmiod/include/dcmtk/dcmiod/modsegmentationseries.h \
../../dcmiod/include/dcmtk/dcmiod/modenhequipment.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../include/dcmtk/dcmseg/segtypes.h ../include/dcmtk/dcmseg/segdef.h \
../include/dcmtk/dcmseg/segdoc.h \
../../dcmiod/include/dcmtk/dcmiod/iodimage.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvriant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/variant.h \
+ ../../ofstd/include/dcmtk/ofstd/variadic/helpers.h \
+ ../../ofstd/include/dcmtk/ofstd/ofalign.h \
../../dcmiod/include/dcmtk/dcmiod/iodcommn.h \
../../dcmiod/include/dcmtk/dcmiod/modpatient.h \
../../dcmiod/include/dcmtk/dcmiod/modpatientstudy.h \
../../ofstd/include/dcmtk/ofstd/ofoption.h \
- ../../ofstd/include/dcmtk/ofstd/ofalign.h \
../../dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h \
../../dcmiod/include/dcmtk/dcmiod/modequipment.h \
../../dcmiod/include/dcmtk/dcmiod/modgeneralseries.h \
../../dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h \
../../dcmiod/include/dcmtk/dcmiod/iodreferences.h \
../../dcmiod/include/dcmtk/dcmiod/modgeneralimage.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h \
+ ../../dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h \
../../dcmiod/include/dcmtk/dcmiod/modimagepixel.h \
../../dcmiod/include/dcmtk/dcmiod/modsegmentationseries.h \
../../dcmiod/include/dcmtk/dcmiod/modenhequipment.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
// default constructor (protected, instance creation via create() function)
DcmSegmentation::DcmSegmentation()
-: DcmIODImage(),
- m_SegmentationSeries(DcmIODImage::getData(), DcmIODImage::getRules()),
- m_EnhancedGeneralEquipmentModule(DcmIODImage::getData(), DcmIODImage::getRules()),
- m_FG(DcmIODImage::getData(), DcmIODImage::getRules()),
- m_DimensionModule(DcmIODImage::getData(), DcmIODImage::getRules()),
+: DcmSegmentation::IODImage(OFin_place<IODImagePixelModule<Uint8> >),
+ m_SegmentationSeries(DcmSegmentation::IODImage::getData(), DcmSegmentation::IODImage::getRules()),
+ m_EnhancedGeneralEquipmentModule(DcmSegmentation::IODImage::getData(), DcmSegmentation::IODImage::getRules()),
+ m_FG(DcmSegmentation::IODImage::getData(), DcmSegmentation::IODImage::getRules()),
+ m_DimensionModule(DcmSegmentation::IODImage::getData(), DcmSegmentation::IODImage::getRules()),
m_Frames(),
m_ImageType("DERIVED\\PRIMARY"),
m_ContentIdentificationMacro(),
segmentation = NULL;
return EC_InvalidValue;
}
- OFDate date;
- date.setCurrentDate();
- date.getISOFormattedDate(tempstr, OFFalse /* no delimiters */);
- segmentation->getGeneralImage().setContentDate(tempstr);
- OFTime time;
- time.setCurrentTime();
- time.getISOFormattedTime(tempstr, OFTrue /* include seconds */, OFFalse, OFFalse, OFFalse);
- segmentation->getGeneralImage().setContentTime(tempstr);
+ DcmIODUtil::setContentDateAndTimeNow(segmentation->getGeneralImage());
result = segmentation->setEquipmentInfo(equipmentInfo, OFTrue /* check */);
}
}
// Read attributes in base classes
- DcmIODImage::read(dataset);
+ DcmSegmentation::IODImage::read(dataset);
// Read Segmentation Series Module
m_SegmentationSeries.read(dataset);
// Multi-frame Functional Groups Module (except functional groups itself)
// SOP Common Module
// Common Instance Reference Module
- if (result.good()) result = DcmIODImage::write(dataset);
+ if (result.good()) result = DcmSegmentation::IODImage::write(dataset);
return result;
}
-OFCondition DcmSegmentation::importPatientStudyFoR(const OFString& filename,
- const OFBool usePatient,
- const OFBool useStudy,
- const OFBool useSeries,
- const OFBool useFoR)
-{
- DcmFileFormat dcmff;
- OFCondition result = dcmff.loadFile(filename.c_str());
- if ( result.good() )
- {
- DcmDataset *dset = dcmff.getDataset();
- if (dset != NULL)
- {
- result = import(*dset, usePatient, useStudy, useSeries, useFoR);
- }
- else
- {
- DCMSEG_ERROR("Unable to get dataset from file for copying patient, study, series and/or frame of reference information");
- result = EC_IllegalCall;
- }
- }
- return result;
-}
-
-
FGInterface& DcmSegmentation::getFunctionalGroups()
{
return m_FGInterface;
IODGeneralEquipmentModule& DcmSegmentation::getEquipment()
{
- return DcmIODImage::getEquipment();
+ return DcmSegmentation::IODImage::getEquipment();
}
void DcmSegmentation::clearData()
{
- DcmIODImage::clearData();
+ DcmSegmentation::IODImage::clearData();
m_FG.clearData();
m_FGInterface.clear();
DcmIODUtil::freeContainer(m_Frames);
// protected override of public base class function
-IODImagePixelModule& DcmSegmentation::getImagePixel()
+IODImagePixelModule<Uint8>& DcmSegmentation::getImagePixel()
{
- return DcmIODImage::getImagePixel();
+ return *OFget<IODImagePixelModule<Uint8> >( &DcmSegmentation::IODImage::getImagePixel() );
}
}
else // We do not accept any transfer syntax that could be lossy compressed
{
- DCMSEG_ERROR("No conversion from RLE original to uncompressed transfer syntax possible!");
+ DCMSEG_ERROR("Transfer syntax " << DcmXfer(xfer).getXferName() << " uses lossy compression, not supported for Segmentation objects!");
result = IOD_EC_CannotDecompress;
}
}
opt_readFlags |= DSRTypes::XF_useDcmsrNamespace;
if (cmd.findOption("--generate-new-uids"))
+ {
opt_generateUIDs = OFTrue;
+ opt_readFlags |= DSRTypes::XF_acceptEmptyStudySeriesInstanceUID;
+ }
cmd.beginOptionBlock();
if (cmd.findOption("--dont-overwrite-uids"))
+ {
+ app.checkDependence("--dont-overwrite-uids", "--generate-new-uids", opt_generateUIDs);
opt_overwriteUIDs = OFFalse;
+ }
if (cmd.findOption("--overwrite-uids"))
+ {
+ app.checkDependence("--overwrite-uids", "--generate-new-uids", opt_generateUIDs);
opt_overwriteUIDs = OFTrue;
+ }
cmd.endOptionBlock();
/* output options */
*
* Header file for class CID100_QuantitativeDiagnosticImagingProcedures
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:37 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:46 by J. Riesmeier
*
*/
*
* Header file for class CID10013_CTAcquisitionType
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:27:00 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:09 by J. Riesmeier
*
*/
*
* Header file for class CID10033_CTReconstructionAlgorithm
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:27:02 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:11 by J. Riesmeier
*
*/
*
* Header file for class CID11_RouteOfAdministration
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:32 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:40 by J. Riesmeier
*
*/
*
* Header file for class CID244_Laterality
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:38 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:47 by J. Riesmeier
*
*/
*
* Header file for class CID29_AcquisitionModality
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:33 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:42 by J. Riesmeier
*
*/
*
* Header file for class CID4020_PETRadionuclide
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:40 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:49 by J. Riesmeier
*
*/
*
* Header file for class CID4021_PETRadiopharmaceutical
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:42 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:51 by J. Riesmeier
*
*/
*
* Header file for class CID4031_CommonAnatomicRegions
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:44 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:53 by J. Riesmeier
*
*/
*
* Header file for class CID42_NumericValueQualifier
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:35 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:44 by J. Riesmeier
*
*/
*/
enum EnumType
{
- /// (eng,IETF4646,"English")
+ /// (eng,RFC5646,"English")
English,
- /// (en-CA,IETF4646","English (CA)")
+ /// (en-CA,RFC5646,"English (CA)")
English_CA,
- /// (en-GB,IETF4646","English (GB)")
+ /// (en-GB,RFC5646,"English (GB)")
English_GB,
- /// (en-US,IETF4646","English (US)")
+ /// (en-US,RFC5646,"English (US)")
English_US,
- /// (fra,IETF4646","French")
+ /// (fra,RFC5646,"French")
French,
- /// (fr-CA,IETF4646","French (CA)")
+ /// (fr-CA,RFC5646,"French (CA)")
French_CA,
- /// (fr-CH,IETF4646","French (CH)")
+ /// (fr-CH,RFC5646,"French (CH)")
French_CH,
- /// (fr-FR,IETF4646","French (FR)")
+ /// (fr-FR,RFC5646,"French (FR)")
French_FR,
- /// (deu,IETF4646","German")
+ /// (deu,RFC5646,"German")
German,
- /// (de-AT,IETF4646","German (AT)")
+ /// (de-AT,RFC5646,"German (AT)")
German_AT,
- /// (de-CH,IETF4646","German (CH)")
+ /// (de-CH,RFC5646,"German (CH)")
German_CH,
- /// (de-DE,IETF4646","German (DE)")
+ /// (de-DE,RFC5646,"German (DE)")
German_DE
};
*
* Header file for class CID6147_ResponseCriteria
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:45 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:55 by J. Riesmeier
*
*/
*
* Header file for class CID7021_MeasurementReportDocumentTitles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:47 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:56 by J. Riesmeier
*
*/
*
* Header file for class CID7181_AbstractMultiDimensionalImageModelComponentUnits
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:49 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:58 by J. Riesmeier
*
*/
*
* Header file for class CID7445_DeviceParticipatingRoles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:51 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:00 by J. Riesmeier
*
*/
*
* Header file for class CID7452_OrganizationalRoles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:53 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:02 by J. Riesmeier
*
*/
*
* Header file for class CID7453_PerformingRoles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:55 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:03 by J. Riesmeier
*
*/
*
* Header file for class CID7464_GeneralRegionOfInterestMeasurementModifiers
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:57 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:05 by J. Riesmeier
*
*/
*
* Header file for class CID7469_GenericIntensityAndSizeMeasurements
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:59 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:07 by J. Riesmeier
*
*/
*
* Header file with DICOM Code Definitions (Coding Scheme "DCM", Version "01")
*
- * Generated automatically from DICOM PS 3.16-2016c
- * File created on 2016-06-13 09:53:55 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 11:50:13 by J. Riesmeier
*
*/
* code definitions *
*--------------------*/
-// total number of codes: 3400
+// total number of codes: 3471
// - retired: 143
// - no name: 27
// - not unique: 14
#define CODE_DCM_VascularImagingSpecialty DSRBasicCodedEntry("128017", "DCM", "Vascular Imaging Specialty")
#define CODE_DCM_FWPByGA_Campbell_1991 DSRBasicCodedEntry("128040", "DCM", "FWP by GA, Campbell, 1991")
#define CODE_DCM_FWPByGA_Hadlock_1991 DSRBasicCodedEntry("128041", "DCM", "FWP by GA, Hadlock, 1991")
+#define CODE_DCM_PlaneThroughSuperiorExtent DSRBasicCodedEntry("128120", "DCM", "Plane through Superior Extent")
+#define CODE_DCM_PlaneThroughInferiorExtent DSRBasicCodedEntry("128121", "DCM", "Plane through Inferior Extent")
+#define CODE_DCM_PlaneThroughProximalExtent DSRBasicCodedEntry("128122", "DCM", "Plane through Proximal Extent")
+#define CODE_DCM_PlaneThroughDistalExtent DSRBasicCodedEntry("128123", "DCM", "Plane through Distal Extent")
+#define CODE_DCM_PlaneThroughMedialExtent DSRBasicCodedEntry("128124", "DCM", "Plane through Medial Extent")
+#define CODE_DCM_PlaneThroughLateralExtent DSRBasicCodedEntry("128125", "DCM", "Plane through Lateral Extent")
+#define CODE_DCM_PlaneThroughLeftmostExtent DSRBasicCodedEntry("128126", "DCM", "Plane through Leftmost Extent")
+#define CODE_DCM_PlaneThroughRightmostExtent DSRBasicCodedEntry("128127", "DCM", "Plane through Rightmost Extent")
+#define CODE_DCM_PlaneThroughAnteriorExtent DSRBasicCodedEntry("128128", "DCM", "Plane through Anterior Extent")
+#define CODE_DCM_PlaneThroughPosteriorExtent DSRBasicCodedEntry("128129", "DCM", "Plane through Posterior Extent")
+#define CODE_DCM_PlaneThroughCenter DSRBasicCodedEntry("128130", "DCM", "Plane through Center")
+#define CODE_DCM_GeometricCenterpoint DSRBasicCodedEntry("128137", "DCM", "Geometric Centerpoint")
+#define CODE_DCM_CenterOfMass DSRBasicCodedEntry("128138", "DCM", "Center of Mass")
+#define CODE_DCM_ImpairedRenalFunction DSRBasicCodedEntry("128144", "DCM", "Impaired Renal Function")
+#define CODE_DCM_LaserCrossHairs DSRBasicCodedEntry("128151", "DCM", "Laser Cross-hairs")
+#define CODE_DCM_AcquiredVolume DSRBasicCodedEntry("128160", "DCM", "Acquired Volume")
+#define CODE_DCM_AbdominalRadiology DSRBasicCodedEntry("128170", "DCM", "Abdominal Radiology")
+#define CODE_DCM_BiomedicalEngineering DSRBasicCodedEntry("128171", "DCM", "Biomedical Engineering")
+#define CODE_DCM_CardiovascularRadiology DSRBasicCodedEntry("128172", "DCM", "Cardiovascular Radiology")
+#define CODE_DCM_InformationTechnology DSRBasicCodedEntry("128173", "DCM", "Information Technology")
+#define CODE_DCM_MedicalPhysics DSRBasicCodedEntry("128174", "DCM", "Medical Physics")
+#define CODE_DCM_MusculoskeletalRadiology DSRBasicCodedEntry("128175", "DCM", "Musculoskeletal Radiology")
+#define CODE_DCM_PediatricRadiology DSRBasicCodedEntry("128177", "DCM", "Pediatric Radiology")
+#define CODE_DCM_ThoracicRadiology DSRBasicCodedEntry("128179", "DCM", "Thoracic Radiology")
+#define CODE_DCM_ForRTWorkflow DSRBasicCodedEntry("128180", "DCM", "For RT Workflow")
+#define CODE_DCM_DiagnosticSourceImages DSRBasicCodedEntry("128181", "DCM", "Diagnostic Source Images")
+#define CODE_DCM_SegmentationResult DSRBasicCodedEntry("128182", "DCM", "Segmentation Result")
+#define CODE_DCM_RegistrationResult DSRBasicCodedEntry("128183", "DCM", "Registration Result")
+#define CODE_DCM_PrePlanningResult DSRBasicCodedEntry("128184", "DCM", "Pre-Planning Result")
+#define CODE_DCM_RTPrescriptionResult DSRBasicCodedEntry("128185", "DCM", "RT Prescription Result")
+#define CODE_DCM_DoseCalculationImageSeries DSRBasicCodedEntry("128186", "DCM", "Dose Calculation Image Series")
+#define CODE_DCM_CoordinateAlignmentImageSeries DSRBasicCodedEntry("128187", "DCM", "Coordinate Alignment Image Series")
+#define CODE_DCM_RTTreatmentSimulationResult DSRBasicCodedEntry("128188", "DCM", "RT Treatment Simulation Result")
+#define CODE_DCM_RTPlanningResult DSRBasicCodedEntry("128189", "DCM", "RT Planning Result")
+#define CODE_DCM_DosimetricResult DSRBasicCodedEntry("128190", "DCM", "Dosimetric Result")
+#define CODE_DCM_PatientSetupVerificationResult DSRBasicCodedEntry("128191", "DCM", "Patient Setup Verification Result")
+#define CODE_DCM_RTTreatmentSessionResult DSRBasicCodedEntry("128192", "DCM", "RT Treatment Session Result")
+#define CODE_DCM_RTTreatmentCourseSummary DSRBasicCodedEntry("128193", "DCM", "RT Treatment Course Summary")
+#define CODE_DCM_RTTreatmentQAResult DSRBasicCodedEntry("128194", "DCM", "RT Treatment QA Result")
+#define CODE_DCM_ForDiagnosis DSRBasicCodedEntry("128195", "DCM", "For Diagnosis")
+#define CODE_DCM_ForSegmentation DSRBasicCodedEntry("128196", "DCM", "For Segmentation")
+#define CODE_DCM_ForRTPrescription DSRBasicCodedEntry("128197", "DCM", "For RT Prescription")
+#define CODE_DCM_ForRTTreatmentPlanning DSRBasicCodedEntry("128198", "DCM", "For RT Treatment Planning")
+#define CODE_DCM_ForPlanComparison DSRBasicCodedEntry("128199", "DCM", "For Plan Comparison")
+#define CODE_DCM_ForRTPlanSummation DSRBasicCodedEntry("128200", "DCM", "For RT Plan Summation")
+#define CODE_DCM_ForPhysicianReview DSRBasicCodedEntry("128201", "DCM", "For Physician Review")
+#define CODE_DCM_ForPhysicistReview DSRBasicCodedEntry("128202", "DCM", "For Physicist Review")
+#define CODE_DCM_ForTumorBoard DSRBasicCodedEntry("128203", "DCM", "For Tumor Board")
+#define CODE_DCM_ForPlanQualityAssurance DSRBasicCodedEntry("128204", "DCM", "For Plan Quality Assurance")
+#define CODE_DCM_ForMachineQualityAssurance DSRBasicCodedEntry("128205", "DCM", "For Machine Quality Assurance")
+#define CODE_DCM_ForPatientSetupVerification DSRBasicCodedEntry("128206", "DCM", "For Patient Setup Verification")
+#define CODE_DCM_ForClinicalTrialSubmission DSRBasicCodedEntry("128207", "DCM", "For Clinical Trial Submission")
+#define CODE_DCM_ForTumorRegistry DSRBasicCodedEntry("128208", "DCM", "For Tumor Registry")
+#define CODE_DCM_RTWorkflowInputUsed DSRBasicCodedEntry("128209", "DCM", "RT Workflow Input Used")
+#define CODE_DCM_RTPrescriptionInputUsed DSRBasicCodedEntry("128210", "DCM", "RT Prescription Input Used")
+#define CODE_DCM_RTTreatmentPlanningInputUsed DSRBasicCodedEntry("128211", "DCM", "RT Treatment Planning Input Used")
+#define CODE_DCM_RTPlanSummationInputUsed DSRBasicCodedEntry("128212", "DCM", "RT Plan Summation Input Used")
+#define CODE_DCM_PhysicianReviewInputUsed DSRBasicCodedEntry("128213", "DCM", "Physician Review Input Used")
+#define CODE_DCM_PhysicistReviewInputUsed DSRBasicCodedEntry("128214", "DCM", "Physicist Review Input Used")
+#define CODE_DCM_PlanQualityAssuranceInputUsed DSRBasicCodedEntry("128215", "DCM", "Plan Quality Assurance Input Used")
+#define CODE_DCM_MachineQualityAssuranceInputUsed DSRBasicCodedEntry("128216", "DCM", "Machine Quality Assurance Input Used")
+#define CODE_DCM_PatientSetupVerificationInputUsed DSRBasicCodedEntry("128217", "DCM", "Patient Setup Verification Input Used")
+#define CODE_DCM_DiagnosisInputUsed DSRBasicCodedEntry("128218", "DCM", "Diagnosis Input Used")
+#define CODE_DCM_ContouringInputUsed DSRBasicCodedEntry("128219", "DCM", "Contouring Input Used")
+#define CODE_DCM_PlanComparisonInputUsed DSRBasicCodedEntry("128220", "DCM", "Plan Comparison Input Used")
+#define CODE_DCM_TumorBoardInputUsed DSRBasicCodedEntry("128221", "DCM", "Tumor Board Input Used")
+#define CODE_DCM_TumorRegistryInputUsed DSRBasicCodedEntry("128222", "DCM", "Tumor Registry Input Used")
+#define CODE_DCM_ClinicalTrialSubmissionInputUsed DSRBasicCodedEntry("128223", "DCM", "Clinical Trial Submission Input Used")
+#define CODE_DCM_SourceMeasurement DSRBasicCodedEntry("128224", "DCM", "Source measurement")
+#define CODE_DCM_SourceReport DSRBasicCodedEntry("128225", "DCM", "Source report")
+#define CODE_DCM_SourceRawData DSRBasicCodedEntry("128226", "DCM", "Source raw data")
#endif
*
* Header file with NCIt Code Definitions (Coding Scheme "NCIt")
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:08:01 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 11:50:21 by J. Riesmeier
*
*/
*
* Header file with UMLS Code Definitions (Coding Scheme "UMLS")
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:08:00 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 11:50:20 by J. Riesmeier
*
*/
* code definitions *
*--------------------*/
-// total number of codes: 39
+// total number of codes: 40
// - retired: 0
// - no name: 0
// - not unique: 0
#define CODE_UMLS_Tyrosine3Octreotate_Ga68 DSRBasicCodedEntry("C1742831", "UMLS", "tyrosine-3-octreotate Ga^68^")
#define CODE_UMLS_Fluoroestradiol_FES_F18 DSRBasicCodedEntry("C1831937", "UMLS", "Fluoroestradiol (FES) F^18^")
#define CODE_UMLS_Sonographer DSRBasicCodedEntry("C1954848", "UMLS", "Sonographer")
+#define CODE_UMLS_Neuroradiology DSRBasicCodedEntry("C2183225", "UMLS", "Neuroradiology")
#define CODE_UMLS_InverseRatioVentilation DSRBasicCodedEntry("C2223982", "UMLS", "Inverse ratio ventilation")
#define CODE_UMLS_RootMeanSquare DSRBasicCodedEntry("C2347976", "UMLS", "Root Mean Square")
#define CODE_UMLS_TimePoint DSRBasicCodedEntry("C2348792", "UMLS", "Time Point")
OFString ContextUID;
/// Mapping Resource (VR=CS, type 1C)
OFString MappingResource;
+ /// Mapping Resource UID (VR=UI, type 3)
+ // - tbd: optional attribute not yet supported
+ /// Mapping Resource Name (VR=LO, type 3)
+ // - tbd: optional attribute not yet supported
/// Context Group Version (VR=DT, type 1C)
OFString ContextGroupVersion;
/// Context Group Local Version (VR=DT, type 1C)
DcmUniqueIdentifier InstanceCreatorUID;
/// Coding Scheme Identification Sequence: (SQ, 1-n, 3)
DSRCodingSchemeIdentificationList CodingSchemeIdentification;
+ /// Context Group Identification Sequence: (SQ, 1-n, 3)
+ // - tbd: optional attribute not yet supported
+ /// Mapping Resource Identification Sequence: (SQ, 1-n, 3)
+ // - tbd: optional attribute not yet supported
// --- General Study Module (M) ---
const OFBool check = OFTrue);
/** add item from specified DICOM dataset to the list of references.
- * Internally an item representing the given dataset is inserted into the hierarchical
+ * Internally, an item representing the given dataset is inserted into the hierarchical
* structure of studies, series and instances, if not already contained in the list.
* In any case, the specified item is selected as the current one.
** @param dataset reference to DICOM dataset from which the relevant UIDs are retrieved
#include "dcmtk/dcmdata/dcerror.h"
#include "dcmtk/ofstd/oflist.h"
+#include "dcmtk/ofstd/ofvector.h"
/*---------------------*
return result;
}
+ /** get copy of all items (as a vector)
+ ** @param items reference to a variable where the result should be stored.
+ * (always cleared before items are added)
+ ** @return status, EC_Normal if successful, an error code otherwise
+ */
+ OFCondition getItems(OFVector<T> &items) const
+ {
+ items.clear();
+ if (!ItemList.empty())
+ {
+ /* avoid re-allocations */
+ items.reserve(ItemList.size());
+ /* iterate over all list items */
+ const OFLIST_TYPENAME OFListConstIterator(T) endPos = ItemList.end();
+ OFLIST_TYPENAME OFListConstIterator(T) iterator = ItemList.begin();
+ while (iterator != endPos)
+ {
+ /* and copy them to the passed vector */
+ items.push_back(*iterator);
+ iterator++;
+ }
+ }
+ /* always return OK */
+ return EC_Normal;
+ }
+
/** add item to the list
** @param item item to be added
*/
ItemList.push_back(item);
}
+ /** add items to the list
+ ** @param items items to be added (stored as a vector)
+ */
+ inline void addItems(const OFVector<T> &items)
+ {
+ const OFTypename OFVector<T>::const_iterator endPos = items.end();
+ OFTypename OFVector<T>::const_iterator iterator = items.begin();
+ while (iterator != endPos)
+ {
+ ItemList.push_back(*iterator);
+ iterator++;
+ }
+ }
+
/** insert item at specified position to the list
** @param idx index of the item before the new one should be inserted (starting from 1)
* @param item item to be inserted
/// write: add comments with details at beginning/end of included template (might be useful for debugging purposes)
static const size_t XF_addCommentsForIncludedTemplate;
+ /// read: accept empty Study/Series/SOP Instance UID attribute values (must be filled later)
+ static const size_t XF_acceptEmptyStudySeriesInstanceUID;
+
/// shortcut: combines all XF_xxxAsAttribute write flags (see above)
static const size_t XF_encodeEverythingAsAttribute;
//@}
*/
void printUnexpectedNodeWarning(const DSRXMLCursor &cursor) const;
+ /** print warning message for missing attribute
+ ** @param cursor cursor pointing to the relevant node
+ * @param name name of the XML attribute
+ */
+ void printMissingAttributeWarning(const DSRXMLCursor &cursor,
+ const char *name) const;
+
/** print general node error message
** @param cursor cursor pointing to the unexpected node
* @param result status used to print details on the error (no message if EC_Normal)
*
* Source file for class CID100_QuantitativeDiagnosticImagingProcedures
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:37 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:46 by J. Riesmeier
*
*/
*
* Source file for class CID10013_CTAcquisitionType
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:27:00 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:09 by J. Riesmeier
*
*/
*
* Source file for class CID10033_CTReconstructionAlgorithm
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:27:02 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:11 by J. Riesmeier
*
*/
*
* Source file for class CID11_RouteOfAdministration
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:32 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:40 by J. Riesmeier
*
*/
*
* Source file for class CID244_Laterality
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:38 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:47 by J. Riesmeier
*
*/
*
* Source file for class CID29_AcquisitionModality
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:33 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:42 by J. Riesmeier
*
*/
*
* Source file for class CID4020_PETRadionuclide
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:40 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:49 by J. Riesmeier
*
*/
*
* Source file for class CID4021_PETRadiopharmaceutical
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:42 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:51 by J. Riesmeier
*
*/
*
* Source file for class CID4031_CommonAnatomicRegions
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:44 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:53 by J. Riesmeier
*
*/
*
* Source file for class CID42_NumericValueQualifier
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:35 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:44 by J. Riesmeier
*
*/
/*
*
- * Copyright (C) 2015, J. Riesmeier, Oldenburg, Germany
+ * Copyright (C) 2015-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Source file for class CID5000_Languages
{
/* create a new code list (should never fail) */
Codes = new CodeList();
- /*Codes and initialize it by adding the coded entries */
- Codes->insert(OFMake_pair(English, DSRBasicCodedEntry("eng", "IETF4646", "English")));
- Codes->insert(OFMake_pair(English_CA, DSRBasicCodedEntry("en-CA", "IETF4646", "English (CA)")));
- Codes->insert(OFMake_pair(English_GB, DSRBasicCodedEntry("en-GB", "IETF4646", "English (GB)")));
- Codes->insert(OFMake_pair(English_US, DSRBasicCodedEntry("en-US", "IETF4646", "English (US)")));
- Codes->insert(OFMake_pair(French, DSRBasicCodedEntry("fra", "IETF4646", "French")));
- Codes->insert(OFMake_pair(French_CA, DSRBasicCodedEntry("fr-CA", "IETF4646", "French (CA)")));
- Codes->insert(OFMake_pair(French_CH, DSRBasicCodedEntry("fr-CH", "IETF4646", "French (CH)")));
- Codes->insert(OFMake_pair(French_FR, DSRBasicCodedEntry("fr-FR", "IETF4646", "French (FR)")));
- Codes->insert(OFMake_pair(German, DSRBasicCodedEntry("deu", "IETF4646", "German")));
- Codes->insert(OFMake_pair(German_AT, DSRBasicCodedEntry("de-AT", "IETF4646", "German (AT)")));
- Codes->insert(OFMake_pair(German_CH, DSRBasicCodedEntry("de-CH", "IETF4646", "German (CH)")));
- Codes->insert(OFMake_pair(German_DE, DSRBasicCodedEntry("de-DE", "IETF4646", "German (DE)")));
+ /* and initialize it by adding the coded entries */
+ Codes->insert(OFMake_pair(English, DSRBasicCodedEntry("eng", "RFC5646", "English")));
+ Codes->insert(OFMake_pair(English_CA, DSRBasicCodedEntry("en-CA", "RFC5646", "English (CA)")));
+ Codes->insert(OFMake_pair(English_GB, DSRBasicCodedEntry("en-GB", "RFC5646", "English (GB)")));
+ Codes->insert(OFMake_pair(English_US, DSRBasicCodedEntry("en-US", "RFC5646", "English (US)")));
+ Codes->insert(OFMake_pair(French, DSRBasicCodedEntry("fra", "RFC5646", "French")));
+ Codes->insert(OFMake_pair(French_CA, DSRBasicCodedEntry("fr-CA", "RFC5646", "French (CA)")));
+ Codes->insert(OFMake_pair(French_CH, DSRBasicCodedEntry("fr-CH", "RFC5646", "French (CH)")));
+ Codes->insert(OFMake_pair(French_FR, DSRBasicCodedEntry("fr-FR", "RFC5646", "French (FR)")));
+ Codes->insert(OFMake_pair(German, DSRBasicCodedEntry("deu", "RFC5646", "German")));
+ Codes->insert(OFMake_pair(German_AT, DSRBasicCodedEntry("de-AT", "RFC5646", "German (AT)")));
+ Codes->insert(OFMake_pair(German_CH, DSRBasicCodedEntry("de-CH", "RFC5646", "German (CH)")));
+ Codes->insert(OFMake_pair(German_DE, DSRBasicCodedEntry("de-DE", "RFC5646", "German (DE)")));
}
/* should never be NULL */
return *Codes;
*
* Source file for class CID6147_ResponseCriteria
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:45 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:55 by J. Riesmeier
*
*/
*
* Source file for class CID7021_MeasurementReportDocumentTitles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:47 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:56 by J. Riesmeier
*
*/
*
* Source file for class CID7181_AbstractMultiDimensionalImageModelComponentUnits
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:49 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:38:58 by J. Riesmeier
*
*/
*
* Source file for class CID7445_DeviceParticipatingRoles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:51 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:00 by J. Riesmeier
*
*/
*
* Source file for class CID7452_OrganizationalRoles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:53 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:02 by J. Riesmeier
*
*/
*
* Source file for class CID7453_PerformingRoles
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:55 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:03 by J. Riesmeier
*
*/
*
* Source file for class CID7464_GeneralRegionOfInterestMeasurementModifiers
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:57 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:05 by J. Riesmeier
*
*/
*
* Source file for class CID7469_GenericIntensityAndSizeMeasurements
*
- * Generated automatically from DICOM PS 3.16-2016b
- * File created on 2016-04-06 16:26:59 by J. Riesmeier
+ * Generated automatically from DICOM PS 3.16-2016d
+ * File created on 2016-10-04 12:39:07 by J. Riesmeier
*
*/
OFCondition DSRDocument::readXMLStudyData(const DSRXMLDocument &doc,
DSRXMLCursor cursor,
- const size_t /*flags*/)
+ const size_t flags)
{
OFCondition result = SR_EC_InvalidDocument;
if (cursor.valid())
{
OFString tmpString;
/* get Study Instance UID from XML attribute */
- result = doc.getElementFromAttribute(cursor, StudyInstanceUID, "uid");
+ if (flags & XF_acceptEmptyStudySeriesInstanceUID)
+ {
+ if (doc.getElementFromAttribute(cursor, StudyInstanceUID, "uid", OFFalse /*encoding*/, OFFalse /*required*/).bad())
+ doc.printMissingAttributeWarning(cursor, "uid");
+ result = EC_Normal;
+ } else
+ result = doc.getElementFromAttribute(cursor, StudyInstanceUID, "uid");
/* goto first sub-element */
cursor.gotoChild();
/* iterate over all nodes */
OFCondition DSRDocument::readXMLSeriesData(const DSRXMLDocument &doc,
DSRXMLCursor cursor,
- const size_t /*flags*/)
+ const size_t flags)
{
OFCondition result = SR_EC_InvalidDocument;
if (cursor.valid())
{
OFString tmpString;
/* get Series Instance UID from XML attribute */
- result = doc.getElementFromAttribute(cursor, SeriesInstanceUID, "uid");
+ if (flags & XF_acceptEmptyStudySeriesInstanceUID)
+ {
+ if (doc.getElementFromAttribute(cursor, SeriesInstanceUID, "uid", OFFalse /*encoding*/, OFFalse /*required*/).bad())
+ doc.printMissingAttributeWarning(cursor, "uid");
+ result = EC_Normal;
+ } else
+ result = doc.getElementFromAttribute(cursor, SeriesInstanceUID, "uid");
/* goto first sub-element */
cursor.gotoChild();
/* iterate over all nodes */
OFCondition DSRDocument::readXMLInstanceData(const DSRXMLDocument &doc,
DSRXMLCursor cursor,
- const size_t /*flags*/)
+ const size_t flags)
{
OFCondition result = SR_EC_InvalidDocument;
if (cursor.valid())
{
OFString tmpString;
/* get SOP Instance UID from XML attribute */
- result = doc.getElementFromAttribute(cursor, SOPInstanceUID, "uid");
+ if (flags & XF_acceptEmptyStudySeriesInstanceUID)
+ {
+ if (doc.getElementFromAttribute(cursor, SOPInstanceUID, "uid", OFFalse /*encoding*/, OFFalse /*required*/).bad())
+ doc.printMissingAttributeWarning(cursor, "uid");
+ result = EC_Normal;
+ } else
+ result = doc.getElementFromAttribute(cursor, SOPInstanceUID, "uid");
/* goto first sub-element */
cursor.gotoChild();
/* iterate over all nodes */
/* used for HTML tmpString conversion */
OFString htmlString;
/* update only some DICOM attributes */
- updateAttributes(OFFalse /* updateAll */);
+ updateAttributes(OFFalse /*updateAll*/);
// --- HTML/XHTML document structure (start) ---
void DSRDocument::updateAttributes(const OFBool updateAll)
{
+ DCMSR_DEBUG("Updating " << (updateAll ? "all " : "") << "DICOM header attributes");
const E_DocumentType documentType = getDocumentType();
/* retrieve SOP class UID from internal document type */
SOPClassUID.putString(documentTypeToSOPClassUID(documentType));
/* create new SOP instance UID if required */
if (SOPInstanceUID.isEmpty())
{
+ DCMSR_DEBUG(" Generating new value for SOP Instance UID");
OFString tmpString;
SOPInstanceUID.putString(dcmGenerateUniqueIdentifier(uid, SITE_INSTANCE_UID_ROOT));
/* set instance creation date to current date (YYYYMMDD) */
}
/* create new study instance UID if required */
if (StudyInstanceUID.isEmpty())
+ {
+ DCMSR_DEBUG(" Generating new value for Study Instance UID");
StudyInstanceUID.putString(dcmGenerateUniqueIdentifier(uid, SITE_STUDY_UID_ROOT));
+ }
/* create new series instance UID if required */
if (SeriesInstanceUID.isEmpty())
+ {
+ DCMSR_DEBUG(" Generating new value for Series Instance UID");
SeriesInstanceUID.putString(dcmGenerateUniqueIdentifier(uid, SITE_SERIES_UID_ROOT));
+ }
/* check and set content date if required */
if (ContentDate.isEmpty())
*---------------------------------*/
/* read flags */
-const size_t DSRTypes::RF_readDigitalSignatures = 1 << 0;
-const size_t DSRTypes::RF_acceptUnknownRelationshipType = 1 << 1;
-const size_t DSRTypes::RF_acceptInvalidContentItemValue = 1 << 2;
-const size_t DSRTypes::RF_ignoreRelationshipConstraints = 1 << 3;
-const size_t DSRTypes::RF_ignoreContentItemErrors = 1 << 4;
-const size_t DSRTypes::RF_skipInvalidContentItems = 1 << 5;
-const size_t DSRTypes::RF_showCurrentlyProcessedItem = 1 << 6;
+const size_t DSRTypes::RF_readDigitalSignatures = 1 << 0;
+const size_t DSRTypes::RF_acceptUnknownRelationshipType = 1 << 1;
+const size_t DSRTypes::RF_acceptInvalidContentItemValue = 1 << 2;
+const size_t DSRTypes::RF_ignoreRelationshipConstraints = 1 << 3;
+const size_t DSRTypes::RF_ignoreContentItemErrors = 1 << 4;
+const size_t DSRTypes::RF_skipInvalidContentItems = 1 << 5;
+const size_t DSRTypes::RF_showCurrentlyProcessedItem = 1 << 6;
/* renderHTML flags */
-const size_t DSRTypes::HF_neverExpandChildrenInline = 1 << 0;
-const size_t DSRTypes::HF_alwaysExpandChildrenInline = 1 << 1;
-const size_t DSRTypes::HF_renderInlineCodes = 1 << 2;
-const size_t DSRTypes::HF_useCodeDetailsTooltip = 1 << 3;
-const size_t DSRTypes::HF_renderConceptNameCodes = 1 << 4;
-const size_t DSRTypes::HF_renderNumericUnitCodes = 1 << 5;
-const size_t DSRTypes::HF_useCodeMeaningAsUnit = 1 << 6;
-const size_t DSRTypes::HF_renderPatientTitle = 1 << 7;
-const size_t DSRTypes::HF_renderNoDocumentHeader = 1 << 8;
-const size_t DSRTypes::HF_renderDcmtkFootnote = 1 << 9;
-const size_t DSRTypes::HF_renderFullData = 1 << 10;
-const size_t DSRTypes::HF_renderSectionTitlesInline = 1 << 11;
-const size_t DSRTypes::HF_copyStyleSheetContent = 1 << 12;
-const size_t DSRTypes::HF_HTML32Compatibility = 1 << 13;
-const size_t DSRTypes::HF_XHTML11Compatibility = 1 << 14;
-const size_t DSRTypes::HF_addDocumentTypeReference = 1 << 15;
-const size_t DSRTypes::HF_omitGeneratorMetaElement = 1 << 16;
+const size_t DSRTypes::HF_neverExpandChildrenInline = 1 << 0;
+const size_t DSRTypes::HF_alwaysExpandChildrenInline = 1 << 1;
+const size_t DSRTypes::HF_renderInlineCodes = 1 << 2;
+const size_t DSRTypes::HF_useCodeDetailsTooltip = 1 << 3;
+const size_t DSRTypes::HF_renderConceptNameCodes = 1 << 4;
+const size_t DSRTypes::HF_renderNumericUnitCodes = 1 << 5;
+const size_t DSRTypes::HF_useCodeMeaningAsUnit = 1 << 6;
+const size_t DSRTypes::HF_renderPatientTitle = 1 << 7;
+const size_t DSRTypes::HF_renderNoDocumentHeader = 1 << 8;
+const size_t DSRTypes::HF_renderDcmtkFootnote = 1 << 9;
+const size_t DSRTypes::HF_renderFullData = 1 << 10;
+const size_t DSRTypes::HF_renderSectionTitlesInline = 1 << 11;
+const size_t DSRTypes::HF_copyStyleSheetContent = 1 << 12;
+const size_t DSRTypes::HF_HTML32Compatibility = 1 << 13;
+const size_t DSRTypes::HF_XHTML11Compatibility = 1 << 14;
+const size_t DSRTypes::HF_addDocumentTypeReference = 1 << 15;
+const size_t DSRTypes::HF_omitGeneratorMetaElement = 1 << 16;
/* internal */
-const size_t DSRTypes::HF_renderItemsSeparately = 1 << 17;
-const size_t DSRTypes::HF_renderItemInline = 1 << 18;
-const size_t DSRTypes::HF_currentlyInsideAnnex = 1 << 19;
-const size_t DSRTypes::HF_createFootnoteReferences = 1 << 20;
-const size_t DSRTypes::HF_convertNonASCIICharacters = 1 << 21;
+const size_t DSRTypes::HF_renderItemsSeparately = 1 << 17;
+const size_t DSRTypes::HF_renderItemInline = 1 << 18;
+const size_t DSRTypes::HF_currentlyInsideAnnex = 1 << 19;
+const size_t DSRTypes::HF_createFootnoteReferences = 1 << 20;
+const size_t DSRTypes::HF_convertNonASCIICharacters = 1 << 21;
/* shortcuts */
-const size_t DSRTypes::HF_renderAllCodes = DSRTypes::HF_renderInlineCodes |
- DSRTypes::HF_renderConceptNameCodes |
- DSRTypes::HF_renderNumericUnitCodes;
-const size_t DSRTypes::HF_internalUseOnly = DSRTypes::HF_renderItemsSeparately |
- DSRTypes::HF_renderItemInline |
- DSRTypes::HF_currentlyInsideAnnex |
- DSRTypes::HF_createFootnoteReferences |
- DSRTypes::HF_convertNonASCIICharacters;
+const size_t DSRTypes::HF_renderAllCodes = DSRTypes::HF_renderInlineCodes |
+ DSRTypes::HF_renderConceptNameCodes |
+ DSRTypes::HF_renderNumericUnitCodes;
+const size_t DSRTypes::HF_internalUseOnly = DSRTypes::HF_renderItemsSeparately |
+ DSRTypes::HF_renderItemInline |
+ DSRTypes::HF_currentlyInsideAnnex |
+ DSRTypes::HF_createFootnoteReferences |
+ DSRTypes::HF_convertNonASCIICharacters;
/* read/writeXML flags */
-const size_t DSRTypes::XF_writeEmptyTags = 1 << 0;
-const size_t DSRTypes::XF_writeTemplateIdentification = 1 << 1;
-const size_t DSRTypes::XF_alwaysWriteItemIdentifier = 1 << 2;
-const size_t DSRTypes::XF_codeComponentsAsAttribute = 1 << 3;
-const size_t DSRTypes::XF_relationshipTypeAsAttribute = 1 << 4;
-const size_t DSRTypes::XF_valueTypeAsAttribute = 1 << 5;
-const size_t DSRTypes::XF_templateIdentifierAsAttribute = 1 << 6;
-const size_t DSRTypes::XF_useDcmsrNamespace = 1 << 7;
-const size_t DSRTypes::XF_addSchemaReference = 1 << 8;
-const size_t DSRTypes::XF_validateSchema = 1 << 9;
-const size_t DSRTypes::XF_templateElementEnclosesItems = 1 << 10;
-const size_t DSRTypes::XF_addCommentsForIncludedTemplate = 1 << 11;
+const size_t DSRTypes::XF_writeEmptyTags = 1 << 0;
+const size_t DSRTypes::XF_writeTemplateIdentification = 1 << 1;
+const size_t DSRTypes::XF_alwaysWriteItemIdentifier = 1 << 2;
+const size_t DSRTypes::XF_codeComponentsAsAttribute = 1 << 3;
+const size_t DSRTypes::XF_relationshipTypeAsAttribute = 1 << 4;
+const size_t DSRTypes::XF_valueTypeAsAttribute = 1 << 5;
+const size_t DSRTypes::XF_templateIdentifierAsAttribute = 1 << 6;
+const size_t DSRTypes::XF_useDcmsrNamespace = 1 << 7;
+const size_t DSRTypes::XF_addSchemaReference = 1 << 8;
+const size_t DSRTypes::XF_validateSchema = 1 << 9;
+const size_t DSRTypes::XF_templateElementEnclosesItems = 1 << 10;
+const size_t DSRTypes::XF_addCommentsForIncludedTemplate = 1 << 11;
+const size_t DSRTypes::XF_acceptEmptyStudySeriesInstanceUID = 1 << 12;
/* shortcuts */
-const size_t DSRTypes::XF_encodeEverythingAsAttribute = DSRTypes::XF_codeComponentsAsAttribute |
- DSRTypes::XF_relationshipTypeAsAttribute |
- DSRTypes::XF_valueTypeAsAttribute |
- DSRTypes::XF_templateIdentifierAsAttribute;
+const size_t DSRTypes::XF_encodeEverythingAsAttribute = DSRTypes::XF_codeComponentsAsAttribute |
+ DSRTypes::XF_relationshipTypeAsAttribute |
+ DSRTypes::XF_valueTypeAsAttribute |
+ DSRTypes::XF_templateIdentifierAsAttribute;
/* print flags */
-const size_t DSRTypes::PF_printItemPosition = 1 << 0;
-const size_t DSRTypes::PF_shortenLongItemValues = 1 << 1;
-const size_t DSRTypes::PF_printSOPInstanceUID = 1 << 2;
-const size_t DSRTypes::PF_printConceptNameCodes = 1 << 3;
-const size_t DSRTypes::PF_printNoDocumentHeader = 1 << 4;
-const size_t DSRTypes::PF_printTemplateIdentification = 1 << 5;
-const size_t DSRTypes::PF_useANSIEscapeCodes = 1 << 6;
-const size_t DSRTypes::PF_printLongSOPClassName = 1 << 7;
-const size_t DSRTypes::PF_printSOPClassUID = 1 << 8;
-const size_t DSRTypes::PF_printInvalidCodes = 1 << 9;
-const size_t DSRTypes::PF_printNodeID = 1 << 10;
-const size_t DSRTypes::PF_indicateEnhancedEncodingMode = 1 << 11;
-const size_t DSRTypes::PF_printAnnotation = 1 << 12;
-const size_t DSRTypes::PF_hideIncludedTemplateNodes = 1 << 13;
-const size_t DSRTypes::PF_dontCountIncludedTemplateNodes = 1 << 14;
+const size_t DSRTypes::PF_printItemPosition = 1 << 0;
+const size_t DSRTypes::PF_shortenLongItemValues = 1 << 1;
+const size_t DSRTypes::PF_printSOPInstanceUID = 1 << 2;
+const size_t DSRTypes::PF_printConceptNameCodes = 1 << 3;
+const size_t DSRTypes::PF_printNoDocumentHeader = 1 << 4;
+const size_t DSRTypes::PF_printTemplateIdentification = 1 << 5;
+const size_t DSRTypes::PF_useANSIEscapeCodes = 1 << 6;
+const size_t DSRTypes::PF_printLongSOPClassName = 1 << 7;
+const size_t DSRTypes::PF_printSOPClassUID = 1 << 8;
+const size_t DSRTypes::PF_printInvalidCodes = 1 << 9;
+const size_t DSRTypes::PF_printNodeID = 1 << 10;
+const size_t DSRTypes::PF_indicateEnhancedEncodingMode = 1 << 11;
+const size_t DSRTypes::PF_printAnnotation = 1 << 12;
+const size_t DSRTypes::PF_hideIncludedTemplateNodes = 1 << 13;
+const size_t DSRTypes::PF_dontCountIncludedTemplateNodes = 1 << 14;
/* shortcuts */
-const size_t DSRTypes::PF_printAllCodes = DSRTypes::PF_printConceptNameCodes;
+const size_t DSRTypes::PF_printAllCodes = DSRTypes::PF_printConceptNameCodes;
/* checkByReferenceRelationships modes */
-const size_t DSRTypes::CM_updatePositionString = 1 << 0;
-const size_t DSRTypes::CM_updateNodeID = 1 << 1;
-const size_t DSRTypes::CM_resetReferenceTargetFlag = 1 << 2;
+const size_t DSRTypes::CM_updatePositionString = 1 << 0;
+const size_t DSRTypes::CM_updateNodeID = 1 << 1;
+const size_t DSRTypes::CM_resetReferenceTargetFlag = 1 << 2;
/* checkByReferenceRelationships bit masks (avoid conflicts!) */
-const size_t DSRTypes::CB_maskPrintFlags = DSRTypes::PF_dontCountIncludedTemplateNodes;
-const size_t DSRTypes::CB_maskReadFlags = DSRTypes::RF_acceptUnknownRelationshipType |
- DSRTypes::RF_ignoreRelationshipConstraints |
- DSRTypes::RF_showCurrentlyProcessedItem;
+const size_t DSRTypes::CB_maskPrintFlags = DSRTypes::PF_dontCountIncludedTemplateNodes;
+const size_t DSRTypes::CB_maskReadFlags = DSRTypes::RF_acceptUnknownRelationshipType |
+ DSRTypes::RF_ignoreRelationshipConstraints |
+ DSRTypes::RF_showCurrentlyProcessedItem;
/*---------------------*
/*
*
- * Copyright (C) 2003-2014, OFFIS e.V.
+ * Copyright (C) 2003-2016, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
void DSRXMLDocument::printUnexpectedNodeWarning(const DSRXMLCursor &cursor) const
{
+ /* report warning message */
OFString tmpString;
DCMSR_WARN("Unexpected node '" << getFullNodePath(cursor, tmpString) << "', skipping");
}
+void DSRXMLDocument::printMissingAttributeWarning(const DSRXMLCursor &cursor,
+ const char *name) const
+{
+ /* report warning message */
+ if (name != NULL)
+ {
+ OFString tmpString;
+ DCMSR_WARN("XML attribute '" << name << "' missing/empty in " << getFullNodePath(cursor, tmpString));
+ }
+}
+
+
void DSRXMLDocument::printMissingAttributeError(const DSRXMLCursor &cursor,
const char *name) const
{
# declare executables
DCMTK_ADD_EXECUTABLE(mkreport mkreport)
-DCMTK_ADD_EXECUTABLE(dcmsr_tests tests tsrtree tsrdoctr tsrdoc tsrcodvl tsrnumvl tsrtpl tsrcmr)
+DCMTK_ADD_EXECUTABLE(dcmsr_tests tests tsrtree tsrdoctr tsrdoc tsrcodvl tsrnumvl tsrtpl tsrcmr tsrlist)
# make sure executables are linked to the corresponding libraries
DCMTK_TARGET_LINK_MODULES(mkreport dcmsr dcmimage dcmimgle dcmdata oflog ofstd)
../include/dcmtk/dcmsr/dsrtpltn.h ../include/dcmtk/dcmsr/dsrstpl.h \
../include/dcmtk/dcmsr/dsrnumtn.h ../include/dcmtk/dcmsr/dsrtextn.h \
../include/dcmtk/dcmsr/dsrstrvl.h
+tsrlist.o: tsrlist.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../../ofstd/include/dcmtk/ofstd/oftest.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconapp.h \
+ ../../ofstd/include/dcmtk/ofstd/oftypes.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdefine.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcast.h \
+ ../../ofstd/include/dcmtk/ofstd/ofexport.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstream.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \
+ ../../ofstd/include/dcmtk/ofstd/oflist.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstring.h \
+ ../../ofstd/include/dcmtk/ofstd/ofconsol.h \
+ ../../ofstd/include/dcmtk/ofstd/ofthread.h \
+ ../../ofstd/include/dcmtk/ofstd/offile.h \
+ ../../ofstd/include/dcmtk/ofstd/ofstd.h \
+ ../../ofstd/include/dcmtk/ofstd/oftraits.h \
+ ../../ofstd/include/dcmtk/ofstd/ofcond.h \
+ ../../ofstd/include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h \
+ ../../oflog/include/dcmtk/oflog/oflog.h \
+ ../../oflog/include/dcmtk/oflog/logger.h \
+ ../../oflog/include/dcmtk/oflog/config.h \
+ ../../oflog/include/dcmtk/oflog/config/defines.h \
+ ../../oflog/include/dcmtk/oflog/helpers/threadcf.h \
+ ../../oflog/include/dcmtk/oflog/loglevel.h \
+ ../../ofstd/include/dcmtk/ofstd/ofvector.h \
+ ../../oflog/include/dcmtk/oflog/tstring.h \
+ ../../oflog/include/dcmtk/oflog/tchar.h \
+ ../../oflog/include/dcmtk/oflog/spi/apndatch.h \
+ ../../oflog/include/dcmtk/oflog/appender.h \
+ ../../ofstd/include/dcmtk/ofstd/ofaptr.h \
+ ../../oflog/include/dcmtk/oflog/layout.h \
+ ../../oflog/include/dcmtk/oflog/streams.h \
+ ../../oflog/include/dcmtk/oflog/helpers/pointer.h \
+ ../../oflog/include/dcmtk/oflog/thread/syncprim.h \
+ ../../oflog/include/dcmtk/oflog/spi/filter.h \
+ ../../oflog/include/dcmtk/oflog/helpers/lockfile.h \
+ ../../oflog/include/dcmtk/oflog/spi/logfact.h \
+ ../../oflog/include/dcmtk/oflog/logmacro.h \
+ ../../oflog/include/dcmtk/oflog/helpers/snprintf.h \
+ ../../oflog/include/dcmtk/oflog/tracelog.h \
+ ../include/dcmtk/dcmsr/dsrtlist.h \
+ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h
tsrnumvl.o: tsrnumvl.cc ../../config/include/dcmtk/config/osconfig.h \
../../ofstd/include/dcmtk/ofstd/oftest.h \
../../ofstd/include/dcmtk/ofstd/ofconapp.h \
LOCALLIBS = -lcmr -ldcmsr -ldcmimage -ldcmimgle -ldcmdata -loflog -lofstd $(TIFFLIBS) \
$(PNGLIBS) $(XMLLIBS) $(ZLIBLIBS) $(ICONVLIBS)
-tstobjs = tests.o tsrtree.o tsrdoctr.o tsrdoc.o tsrcodvl.o tsrnumvl.o tsrtpl.o tsrcmr.o
+tstobjs = tests.o tsrtree.o tsrdoctr.o tsrdoc.o tsrcodvl.o tsrnumvl.o tsrtpl.o tsrcmr.o \
+ tsrlist.o
objs = mkreport.o $(tstobjs)
progs = mkreport tests
#include "dcmtk/ofstd/oftest.h"
+OFTEST_REGISTER(dcmsr_addItems);
+OFTEST_REGISTER(dcmsr_getItems);
OFTEST_REGISTER(dcmsr_addTreeNode_1);
OFTEST_REGISTER(dcmsr_addTreeNode_2);
OFTEST_REGISTER(dcmsr_addTreeNode_3);
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, J. Riesmeier, Oldenburg, Germany
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation are maintained by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: dcmsr
+ *
+ * Author: Joerg Riesmeier
+ *
+ * Purpose:
+ * test program for class DSRListOfItems
+ *
+ */
+
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+
+#include "dcmtk/ofstd/oftest.h"
+
+#include "dcmtk/dcmsr/dsrtlist.h"
+
+
+OFTEST(dcmsr_addItems)
+{
+ // disable test case when building shared libraries because of linker errors
+#ifndef DCMTK_SHARED
+ /* prepare test data */
+ OFVector<Uint16> vec;
+ for (Uint16 i = 0; i < 10; ++i)
+ vec.push_back(i);
+ /* add data to list */
+ DSRListOfItems<Uint16> lst;
+ lst.addItems(vec);
+ /* and check result */
+ OFCHECK_EQUAL(lst.getNumberOfItems(), 10);
+ for (Uint16 j = 0; j < 10; ++j)
+ OFCHECK_EQUAL(lst.getItem(j + 1), j);
+ OFCHECK(lst.isElement(7));
+ OFCHECK(!lst.isElement(10));
+#endif
+}
+
+
+OFTEST(dcmsr_getItems)
+{
+ // disable test case when building shared libraries because of linker errors
+#ifndef DCMTK_SHARED
+ DSRListOfItems<Uint16> lst;
+ /* add data to list */
+ for (Uint16 i = 0; i < 10; ++i)
+ lst.addItem(i);
+ /* and check result */
+ OFCHECK_EQUAL(lst.getNumberOfItems(), 10);
+ OFVector<Uint16> vec;
+ OFCHECK(lst.getItems(vec).good());
+ OFCHECK_EQUAL(vec.size(), 10);
+ for (Uint16 j = 0; j < 10; ++j)
+ OFCHECK_EQUAL(vec.at(j), j);
+#endif
+}
/*!
-\page mod_dcmtract dcmtract: a library for working with Tractography Results
+\page mod_dcmtract dcmtract: a library for working with tractography results
This module contains classes to deal with DICOM Tractography Results objects.
It is able to create, load and access the contained fiber tracks and the related
The main class of this module is:
\li \b TrcTractographyResults
-
\section Examples
The following (complete) example shows how to load a DICOM Tractography Results
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
../../dcmdata/include/dcmtk/dcmdata/dcitem.h \
../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \
../../dcmdata/include/dcmtk/dcmdata/dcdatutl.h \
+ ../../ofstd/include/dcmtk/ofstd/ofdate.h \
+ ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmiod/include/dcmtk/dcmiod/ioddef.h \
../../dcmiod/include/dcmtk/dcmiod/iodrules.h \
../../ofstd/include/dcmtk/ofstd/ofmap.h \
../../dcmdata/include/dcmtk/dcmdata/dcvras.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrcs.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrda.h \
- ../../ofstd/include/dcmtk/ofstd/ofdate.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrds.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrdt.h \
../../ofstd/include/dcmtk/ofstd/ofdatime.h \
- ../../ofstd/include/dcmtk/ofstd/oftime.h \
../../dcmdata/include/dcmtk/dcmdata/dcvris.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrtm.h \
../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \
Changes between releases are documented here.
+**** Changes from 2016.11.02 (schlamelcher)
+
+- Updated CHANGES.361 for new development snapshot.
+ Affects: docs/CHANGES.361
+
+- Updated DCMTK_ABI_VERSION for new development snapshot.
+ Affects: CMake/dcmtkPrepare.cmake
+
+- Updated man pages for new development snapshot.
+ Affects: doxygen/manpages/man1/dcm2pdf.1
+ doxygen/manpages/man1/dcm2pnm.1
+ doxygen/manpages/man1/dcm2xml.1
+ doxygen/manpages/man1/dcmcjpeg.1
+ doxygen/manpages/man1/dcmcjpls.1
+ doxygen/manpages/man1/dcmconv.1
+ doxygen/manpages/man1/dcmcrle.1
+ doxygen/manpages/man1/dcmdjpeg.1
+ doxygen/manpages/man1/dcmdjpls.1
+ doxygen/manpages/man1/dcmdrle.1
+ doxygen/manpages/man1/dcmdspfn.1
+ doxygen/manpages/man1/dcmdump.1
+ doxygen/manpages/man1/dcmftest.1
+ doxygen/manpages/man1/dcmgpdir.1
+ doxygen/manpages/man1/dcmj2pnm.1
+ doxygen/manpages/man1/dcml2pnm.1
+ doxygen/manpages/man1/dcmmkcrv.1
+ doxygen/manpages/man1/dcmmkdir.1
+ doxygen/manpages/man1/dcmmklut.1
+ doxygen/manpages/man1/dcmodify.1
+ doxygen/manpages/man1/dcmp2pgm.1
+ doxygen/manpages/man1/dcmprscp.1
+ doxygen/manpages/man1/dcmprscu.1
+ doxygen/manpages/man1/dcmpschk.1
+ doxygen/manpages/man1/dcmpsmk.1
+ doxygen/manpages/man1/dcmpsprt.1
+ doxygen/manpages/man1/dcmpsrcv.1
+ doxygen/manpages/man1/dcmpssnd.1
+ doxygen/manpages/man1/dcmqridx.1
+ doxygen/manpages/man1/dcmqrscp.1
+ doxygen/manpages/man1/dcmqrti.1
+ doxygen/manpages/man1/dcmquant.1
+ doxygen/manpages/man1/dcmrecv.1
+ doxygen/manpages/man1/dcmscale.1
+ doxygen/manpages/man1/dcmsend.1
+ doxygen/manpages/man1/dcmsign.1
+ doxygen/manpages/man1/dcod2lum.1
+ doxygen/manpages/man1/dconvlum.1
+ doxygen/manpages/man1/drtdump.1
+ doxygen/manpages/man1/dsr2html.1
+ doxygen/manpages/man1/dsr2xml.1
+ doxygen/manpages/man1/dsrdump.1
+ doxygen/manpages/man1/dump2dcm.1
+ doxygen/manpages/man1/echoscu.1
+ doxygen/manpages/man1/findscu.1
+ doxygen/manpages/man1/getscu.1
+ doxygen/manpages/man1/img2dcm.1
+ doxygen/manpages/man1/movescu.1
+ doxygen/manpages/man1/pdf2dcm.1
+ doxygen/manpages/man1/storescp.1
+ doxygen/manpages/man1/storescu.1
+ doxygen/manpages/man1/termscu.1
+ doxygen/manpages/man1/wlmscpfs.1
+ doxygen/manpages/man1/xml2dcm.1
+ doxygen/manpages/man1/xml2dsr.1
+
+- Updated Makefile dependencies.
+ Affects: ofstd/libsrc/Makefile.dep
+
+- Added API documentation for OFvariant etc.
+ Affects: ofstd/include/dcmtk/ofstd/ofutil.h
+ ofstd/include/dcmtk/ofstd/ofvriant.h
+
+**** Changes from 2016.11.01 (riesmeier)
+
+- Added readXML mode that accepts empty/missing UID:
+ Added new mode to readXML() that accepts empty or missing Study/Series/
+ SOP Instance UID values in the input document. This is required if only
+ some of these three UID values should be re-generated (replaced). Now,
+ option --generate-new-uids (with --dont-overwrite-uids) works as expected.
+ Thanks to Martin Wenger <Martin.Wenger@klinikum-hef.de> for the original
+ report that resulted in this improvement/fix.
+ Affects: dcmsr/apps/xml2dsr.cc
+ dcmsr/include/dcmtk/dcmsr/dsrtypes.h
+ dcmsr/include/dcmtk/dcmsr/dsrxmld.h
+ dcmsr/libsrc/dsrdoc.cc
+ dcmsr/libsrc/dsrtypes.cc
+ dcmsr/libsrc/dsrxmld.cc
+
+- Output debug messages when updating attributes:
+ Output messages to the debug logger when updating DICOM header attributes,
+ especially when generating new Study / Series / SOP Instance UIDs.
+ Affects: dcmsr/libsrc/dsrdoc.cc
+
+- Made clear that options +/-Uo require +Ug:
+ Now it is checked whether option --generate-new-uids (+Ug) is used when
+ --overwrite-uids (+Uo) or --dont-overwrite-uids (-Uo) is also specified
+ on the command line. This should avoid possible confusions.
+ Affects: dcmdata/apps/xml2dcm.cc
+ dcmsr/apps/xml2dsr.cc
+
+**** Changes from 2016.10.31 (schlamelcher)
+
+- Added OFvariant implementation for C++11:
+ Closes DCMTK bug #693.
+ Affects: dcmiod/include/dcmtk/dcmiod/iodimage.h
+ dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h
+ ofstd/include/dcmtk/ofstd/ofutil.h
+ ofstd/include/dcmtk/ofstd/ofvriant.h
+
+**** Changes from 2016.10.30 (schlamelcher)
+
+- Fixed a problem with a previous commit:
+ A line in a previous commit was truncated, leading to compiler errors.
+ Affects: dcmpstat/libsrc/dviface.cc
+
+**** Changes from 2016.10.28 (schlamelcher)
+
+- Fixed using third party libraries with MinGW:
+ Modified 3rdparty.cmake such that MinGW is handled the same as Unix like
+ systems regarding the integration of third party libraries.
+ Affects: CMake/3rdparty.cmake
+
+- Fixed 32 vs. 64 bit problem in dcmqrdb:
+ Fixed incompatibility of dcmqrdb databases between 32 bit and 64 bit code on
+ the same platform. Don't forget to re-create your databases using dcmqridx.
+ Affects: dcmqrdb/include/dcmtk/dcmqrdb/dcmqridx.h
+
+- Several fixes for dcmpstat:
+ Fixed detecting structured reporting objects based on the SOP class.
+ Fixed print job execution and cleanup. Print job executing was bugged when
+ the name of one print job was a prefix to the name of another print job.
+ Fixed deadlock in instanceReviewed() regarding database access.
+ Fixed opening files named using non ASCII characters (only relevant on
+ Windows).
+ Affects: dcmpstat/apps/dcmprscu.cc
+ dcmpstat/libsrc/dviface.cc
+ dcmpstat/libsrc/dvpshlp.cc
+
+- Fixed wrong usage of checkStringValue() in dcmpmap:
+ Fixed passing the attribute type to checkStringValue() where the value multi-
+ plicity is expected.
+ Affects: dcmpmap/libsrc/dpmmodparametricmapimage.cc
+
+**** Changes from 2016.10.12 (riesmeier)
+
+- Added comment on recently added DICOM attributes:
+ Added comment on DICOM attributes that were recently added to the DICOM
+ standard but which are not (yet) supported by the "dcmsr" module.
+ As usual, these "things to be done" can be found by searching for "tbd:"
+ in the source code of this module.
+ Affects: dcmsr/include/dcmtk/dcmsr/dsrcodvl.h
+ dcmsr/include/dcmtk/dcmsr/dsrdoc.h
+
+- Updated "dcmrt" classes based on DICOM 2016d:
+ Updated automatically generated IOD and sequence C++ classes for the various
+ RT objects based on the current edition of the DICOM standard (2016d).
+ Added: dcmrt/include/dcmtk/dcmrt/seq/drtcgis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdddps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtddps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtgpis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmris.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpdeds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtscs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtsins.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtspgis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtsptcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtssrcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtsss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtudis.h
+ dcmrt/libsrc/drtcgis.cc
+ dcmrt/libsrc/drtdddps.cc
+ dcmrt/libsrc/drtddps.cc
+ dcmrt/libsrc/drtgpis.cc
+ dcmrt/libsrc/drtmris.cc
+ dcmrt/libsrc/drtpdeds.cc
+ dcmrt/libsrc/drtscs.cc
+ dcmrt/libsrc/drtsins.cc
+ dcmrt/libsrc/drtspgis.cc
+ dcmrt/libsrc/drtsptcs.cc
+ dcmrt/libsrc/drtssrcs.cc
+ dcmrt/libsrc/drtsss.cc
+ dcmrt/libsrc/drtudis.cc
+ Removed: dcmrt/include/dcmtk/dcmrt/seq/drtarics.h
+ dcmrt/libsrc/drtarics.cc
+ Affects: dcmrt/apps/Makefile.dep
+ dcmrt/include/dcmtk/dcmrt/drtdose.h
+ dcmrt/include/dcmtk/dcmrt/drtimage.h
+ dcmrt/include/dcmtk/dcmrt/drtionpl.h
+ dcmrt/include/dcmtk/dcmrt/drtiontr.h
+ dcmrt/include/dcmtk/dcmrt/drtplan.h
+ dcmrt/include/dcmtk/dcmrt/drtstrct.h
+ dcmrt/include/dcmtk/dcmrt/drttreat.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtaadcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtadcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtads.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtafs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtags.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtajcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtas1.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtas5.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtas6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtas7.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtass.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbads.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbas.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbcps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbl2.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbl5.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbldls.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbldps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtblds1.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtblds5.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtblds6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbldts.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbrcss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbrdrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtbvcps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcbars.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtccs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcctus.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcdrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtces.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtchs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcims.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcncs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcos.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcpas.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcpis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcsas.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcshs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcsis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtcss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdias.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdimcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdimrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdirs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdspcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdvhs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtdvrrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drteas.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtecs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtes.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtfds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtfes.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtfgs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtfgss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtfms.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtfsss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtgas.h
+ dcmrt/include/dcmtk/dcmrt/seq/drthsdrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtiais.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtians.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtiblds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtibls.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtibs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drticpds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drticps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtics.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtiis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtipiqs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtircs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtiseis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtitts.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtiwps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtiws.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtlsds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtlsds6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtlsds7.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmacds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmas.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmdrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmls.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtmucs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtoas.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtois.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtopis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtos.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpbcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpcxs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpdecs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpfms.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpics.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtporcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtporis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtppcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtprsis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpscs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpsics.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpsss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtpvis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtqds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtras.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbas2.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbas8.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbls.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbos1.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbos6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbos7.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbs2.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbs4.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrbs8.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrcdrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrcos.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrcps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrdros.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrdrs1.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrdrs6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrdrs8.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrecs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrfgs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrfors.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrics.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrims.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtris.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrlsds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrmdrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrms.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrmss6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrmss7.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrpcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrpis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrppcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrpphs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrpps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrppss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrris1.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrris6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrris9.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrms.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrros.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrpcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrros.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrshs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrtps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrtps3.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrtps4.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrrtps5.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrscs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrsers.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrses.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrshs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrshs6.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrshs7.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrsis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrsns.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrsos.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrsrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrsss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrsts.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrtrs2.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrtrs4.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrvis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrws.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtrwvms.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtscris.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtsdcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtsds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtshds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtsis.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtsns.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtspccs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtspcs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtss.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtssrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drttms0.h
+ dcmrt/include/dcmtk/dcmrt/seq/drttms9.h
+ dcmrt/include/dcmtk/dcmrt/seq/drttscds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drttsibs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drttsmds.h
+ dcmrt/include/dcmtk/dcmrt/seq/drttts.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtvls.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtwps.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtwrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtwrsrs.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtws.h
+ dcmrt/include/dcmtk/dcmrt/seq/drtxrs.h
+ dcmrt/libsrc/CMakeLists.txt
+ dcmrt/libsrc/Makefile.dep
+ dcmrt/libsrc/Makefile.in
+ dcmrt/libsrc/drtaadcs.cc
+ dcmrt/libsrc/drtadcs.cc
+ dcmrt/libsrc/drtads.cc
+ dcmrt/libsrc/drtafs.cc
+ dcmrt/libsrc/drtags.cc
+ dcmrt/libsrc/drtajcs.cc
+ dcmrt/libsrc/drtas1.cc
+ dcmrt/libsrc/drtas5.cc
+ dcmrt/libsrc/drtas6.cc
+ dcmrt/libsrc/drtas7.cc
+ dcmrt/libsrc/drtass.cc
+ dcmrt/libsrc/drtbads.cc
+ dcmrt/libsrc/drtbas.cc
+ dcmrt/libsrc/drtbcps.cc
+ dcmrt/libsrc/drtbl2.cc
+ dcmrt/libsrc/drtbl5.cc
+ dcmrt/libsrc/drtbldls.cc
+ dcmrt/libsrc/drtbldps.cc
+ dcmrt/libsrc/drtblds1.cc
+ dcmrt/libsrc/drtblds5.cc
+ dcmrt/libsrc/drtblds6.cc
+ dcmrt/libsrc/drtbldts.cc
+ dcmrt/libsrc/drtbrcss.cc
+ dcmrt/libsrc/drtbrdrs.cc
+ dcmrt/libsrc/drtbrs.cc
+ dcmrt/libsrc/drtbs.cc
+ dcmrt/libsrc/drtbss.cc
+ dcmrt/libsrc/drtbvcps.cc
+ dcmrt/libsrc/drtcbars.cc
+ dcmrt/libsrc/drtccs.cc
+ dcmrt/libsrc/drtcctus.cc
+ dcmrt/libsrc/drtcdrs.cc
+ dcmrt/libsrc/drtces.cc
+ dcmrt/libsrc/drtchs.cc
+ dcmrt/libsrc/drtcims.cc
+ dcmrt/libsrc/drtcis.cc
+ dcmrt/libsrc/drtcncs.cc
+ dcmrt/libsrc/drtcos.cc
+ dcmrt/libsrc/drtcpas.cc
+ dcmrt/libsrc/drtcpis.cc
+ dcmrt/libsrc/drtcps.cc
+ dcmrt/libsrc/drtcs.cc
+ dcmrt/libsrc/drtcsas.cc
+ dcmrt/libsrc/drtcshs.cc
+ dcmrt/libsrc/drtcsis.cc
+ dcmrt/libsrc/drtcss.cc
+ dcmrt/libsrc/drtdcs.cc
+ dcmrt/libsrc/drtdias.cc
+ dcmrt/libsrc/drtdimcs.cc
+ dcmrt/libsrc/drtdimrs.cc
+ dcmrt/libsrc/drtdirs.cc
+ dcmrt/libsrc/drtdose.cc
+ dcmrt/libsrc/drtdrs.cc
+ dcmrt/libsrc/drtds.cc
+ dcmrt/libsrc/drtdspcs.cc
+ dcmrt/libsrc/drtdss.cc
+ dcmrt/libsrc/drtdvhs.cc
+ dcmrt/libsrc/drtdvrrs.cc
+ dcmrt/libsrc/drteas.cc
+ dcmrt/libsrc/drtecs.cc
+ dcmrt/libsrc/drtes.cc
+ dcmrt/libsrc/drtfds.cc
+ dcmrt/libsrc/drtfes.cc
+ dcmrt/libsrc/drtfgs.cc
+ dcmrt/libsrc/drtfgss.cc
+ dcmrt/libsrc/drtfms.cc
+ dcmrt/libsrc/drtfsss.cc
+ dcmrt/libsrc/drtgas.cc
+ dcmrt/libsrc/drthsdrs.cc
+ dcmrt/libsrc/drtiais.cc
+ dcmrt/libsrc/drtians.cc
+ dcmrt/libsrc/drtiblds.cc
+ dcmrt/libsrc/drtibls.cc
+ dcmrt/libsrc/drtibs.cc
+ dcmrt/libsrc/drticpds.cc
+ dcmrt/libsrc/drticps.cc
+ dcmrt/libsrc/drtics.cc
+ dcmrt/libsrc/drtiis.cc
+ dcmrt/libsrc/drtimage.cc
+ dcmrt/libsrc/drtionpl.cc
+ dcmrt/libsrc/drtiontr.cc
+ dcmrt/libsrc/drtipiqs.cc
+ dcmrt/libsrc/drtircs.cc
+ dcmrt/libsrc/drtiseis.cc
+ dcmrt/libsrc/drtitts.cc
+ dcmrt/libsrc/drtiwps.cc
+ dcmrt/libsrc/drtiws.cc
+ dcmrt/libsrc/drtlsds.cc
+ dcmrt/libsrc/drtlsds6.cc
+ dcmrt/libsrc/drtlsds7.cc
+ dcmrt/libsrc/drtmacds.cc
+ dcmrt/libsrc/drtmas.cc
+ dcmrt/libsrc/drtmdrs.cc
+ dcmrt/libsrc/drtmls.cc
+ dcmrt/libsrc/drtmps.cc
+ dcmrt/libsrc/drtmss.cc
+ dcmrt/libsrc/drtmucs.cc
+ dcmrt/libsrc/drtoas.cc
+ dcmrt/libsrc/drtois.cc
+ dcmrt/libsrc/drtopis.cc
+ dcmrt/libsrc/drtos.cc
+ dcmrt/libsrc/drtpbcs.cc
+ dcmrt/libsrc/drtpcs.cc
+ dcmrt/libsrc/drtpcxs.cc
+ dcmrt/libsrc/drtpdecs.cc
+ dcmrt/libsrc/drtpfms.cc
+ dcmrt/libsrc/drtpics.cc
+ dcmrt/libsrc/drtplan.cc
+ dcmrt/libsrc/drtporcs.cc
+ dcmrt/libsrc/drtporis.cc
+ dcmrt/libsrc/drtppcs.cc
+ dcmrt/libsrc/drtprsis.cc
+ dcmrt/libsrc/drtpscs.cc
+ dcmrt/libsrc/drtpsics.cc
+ dcmrt/libsrc/drtpss.cc
+ dcmrt/libsrc/drtpsss.cc
+ dcmrt/libsrc/drtpvis.cc
+ dcmrt/libsrc/drtqds.cc
+ dcmrt/libsrc/drtras.cc
+ dcmrt/libsrc/drtrbas2.cc
+ dcmrt/libsrc/drtrbas8.cc
+ dcmrt/libsrc/drtrbls.cc
+ dcmrt/libsrc/drtrbos1.cc
+ dcmrt/libsrc/drtrbos6.cc
+ dcmrt/libsrc/drtrbos7.cc
+ dcmrt/libsrc/drtrbs2.cc
+ dcmrt/libsrc/drtrbs4.cc
+ dcmrt/libsrc/drtrbs8.cc
+ dcmrt/libsrc/drtrcdrs.cc
+ dcmrt/libsrc/drtrcos.cc
+ dcmrt/libsrc/drtrcps.cc
+ dcmrt/libsrc/drtrcs.cc
+ dcmrt/libsrc/drtrdros.cc
+ dcmrt/libsrc/drtrdrs1.cc
+ dcmrt/libsrc/drtrdrs6.cc
+ dcmrt/libsrc/drtrdrs8.cc
+ dcmrt/libsrc/drtrds.cc
+ dcmrt/libsrc/drtrecs.cc
+ dcmrt/libsrc/drtrfgs.cc
+ dcmrt/libsrc/drtrfors.cc
+ dcmrt/libsrc/drtrics.cc
+ dcmrt/libsrc/drtrims.cc
+ dcmrt/libsrc/drtris.cc
+ dcmrt/libsrc/drtrlsds.cc
+ dcmrt/libsrc/drtrmdrs.cc
+ dcmrt/libsrc/drtrms.cc
+ dcmrt/libsrc/drtrmss6.cc
+ dcmrt/libsrc/drtrmss7.cc
+ dcmrt/libsrc/drtrpcs.cc
+ dcmrt/libsrc/drtrpis.cc
+ dcmrt/libsrc/drtrppcs.cc
+ dcmrt/libsrc/drtrpphs.cc
+ dcmrt/libsrc/drtrpps.cc
+ dcmrt/libsrc/drtrppss.cc
+ dcmrt/libsrc/drtrps.cc
+ dcmrt/libsrc/drtrris1.cc
+ dcmrt/libsrc/drtrris6.cc
+ dcmrt/libsrc/drtrris9.cc
+ dcmrt/libsrc/drtrrms.cc
+ dcmrt/libsrc/drtrros.cc
+ dcmrt/libsrc/drtrrpcs.cc
+ dcmrt/libsrc/drtrrros.cc
+ dcmrt/libsrc/drtrrs.cc
+ dcmrt/libsrc/drtrrshs.cc
+ dcmrt/libsrc/drtrrtps.cc
+ dcmrt/libsrc/drtrrtps3.cc
+ dcmrt/libsrc/drtrrtps4.cc
+ dcmrt/libsrc/drtrrtps5.cc
+ dcmrt/libsrc/drtrscs.cc
+ dcmrt/libsrc/drtrsers.cc
+ dcmrt/libsrc/drtrses.cc
+ dcmrt/libsrc/drtrshs.cc
+ dcmrt/libsrc/drtrshs6.cc
+ dcmrt/libsrc/drtrshs7.cc
+ dcmrt/libsrc/drtrsis.cc
+ dcmrt/libsrc/drtrsns.cc
+ dcmrt/libsrc/drtrsos.cc
+ dcmrt/libsrc/drtrsrs.cc
+ dcmrt/libsrc/drtrss.cc
+ dcmrt/libsrc/drtrsss.cc
+ dcmrt/libsrc/drtrsts.cc
+ dcmrt/libsrc/drtrtrs2.cc
+ dcmrt/libsrc/drtrtrs4.cc
+ dcmrt/libsrc/drtrvis.cc
+ dcmrt/libsrc/drtrws.cc
+ dcmrt/libsrc/drtrwvms.cc
+ dcmrt/libsrc/drtscris.cc
+ dcmrt/libsrc/drtsdcs.cc
+ dcmrt/libsrc/drtsds.cc
+ dcmrt/libsrc/drtshds.cc
+ dcmrt/libsrc/drtsis.cc
+ dcmrt/libsrc/drtsns.cc
+ dcmrt/libsrc/drtspccs.cc
+ dcmrt/libsrc/drtspcs.cc
+ dcmrt/libsrc/drtss.cc
+ dcmrt/libsrc/drtssrs.cc
+ dcmrt/libsrc/drtstrct.cc
+ dcmrt/libsrc/drttms0.cc
+ dcmrt/libsrc/drttms9.cc
+ dcmrt/libsrc/drttreat.cc
+ dcmrt/libsrc/drttscds.cc
+ dcmrt/libsrc/drttsibs.cc
+ dcmrt/libsrc/drttsmds.cc
+ dcmrt/libsrc/drttts.cc
+ dcmrt/libsrc/drtvls.cc
+ dcmrt/libsrc/drtwps.cc
+ dcmrt/libsrc/drtwrs.cc
+ dcmrt/libsrc/drtwrsrs.cc
+ dcmrt/libsrc/drtws.cc
+ dcmrt/libsrc/drtxrs.cc
+ dcmrt/tests/Makefile.dep
+
+- Fixed typo in comments.
+ Affects: dcmimgle/include/dcmtk/dcmimgle/dimoopxt.h
+
+**** Changes from 2016.10.04 (riesmeier)
+
+- Updated Context Group classes for DICOM 2016d:
+ Updated automatically generated Context Group classes for the 2016d
+ edition of the DICOM standard. There were no changes to the supported
+ Context Groups.
+ Affects: dcmsr/include/dcmtk/dcmsr/cmr/cid100.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid10013.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid10033.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid11.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid244.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid29.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid4020.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid4021.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid4031.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid42.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid6147.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid7021.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid7181.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid7445.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid7452.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid7453.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid7464.h
+ dcmsr/include/dcmtk/dcmsr/cmr/cid7469.h
+ dcmsr/libcmr/cid100.cc
+ dcmsr/libcmr/cid10013.cc
+ dcmsr/libcmr/cid10033.cc
+ dcmsr/libcmr/cid11.cc
+ dcmsr/libcmr/cid244.cc
+ dcmsr/libcmr/cid29.cc
+ dcmsr/libcmr/cid4020.cc
+ dcmsr/libcmr/cid4021.cc
+ dcmsr/libcmr/cid4031.cc
+ dcmsr/libcmr/cid42.cc
+ dcmsr/libcmr/cid6147.cc
+ dcmsr/libcmr/cid7021.cc
+ dcmsr/libcmr/cid7181.cc
+ dcmsr/libcmr/cid7445.cc
+ dcmsr/libcmr/cid7452.cc
+ dcmsr/libcmr/cid7453.cc
+ dcmsr/libcmr/cid7464.cc
+ dcmsr/libcmr/cid7469.cc
+
+- Updated code definitions for DICOM 2016d:
+ Updated automatically generated code definitions for coding scheme "DCM",
+ "NCIt" and "UMLS" for the 2016d edition of the DICOM standard.
+ Affects: dcmsr/include/dcmtk/dcmsr/codes/dcm.h
+ dcmsr/include/dcmtk/dcmsr/codes/ncit.h
+ dcmsr/include/dcmtk/dcmsr/codes/umls.h
+
+- Update data dictionary for DICOM 2016d.
+ Affects: dcmdata/data/dicom.dic
+ dcmdata/include/dcmtk/dcmdata/dcdeftag.h
+ dcmdata/libsrc/dcdictbi.cc
+
+**** Changes from 2016.10.04 (schlamelcher)
+
+- Fixed a problem in OFtuple's constructor:
+ GCC 6.2.1 wasn't able to compile OFtuple's constructor, which is fixed in
+ this commit.
+ Affects: ofstd/include/dcmtk/ofstd/oftuple.h
+
+**** Changes from 2016.09.22 (riesmeier)
+
+- Added new DCMTK modules "dcmtract" and "dcmpmap":
+ These two (still pretty new) modules were missing in the README file.
+ Also updated description of "dcmsr" module in order to be consistent
+ with the Doxygen file.
+ Affects: README
+
+**** Changes from 2016.09.21 (onken)
+
+- Make Manufacturer type 2, consistency fixes:
+ Thanks to Jörg Riesmeier for the hint and proposed patch.
+ Affects: dcmiod/include/dcmtk/dcmiod/modenhequipment.h
+ dcmiod/include/dcmtk/dcmiod/modequipment.h
+ dcmiod/libsrc/modenhequipment.cc
+ dcmiod/libsrc/modequipment.cc
+
+**** Changes from 2016.09.20 (riesmeier)
+
+- Disable two test cases when building shared libs:
+ Temporarily disable two new test cases when building shared libraries
+ because of unresolvable linker errors (static member "EmptyItem" not
+ found).
+ See DCMTK Bug #694.
+ Affects: dcmsr/tests/Makefile.dep
+ dcmsr/tests/tsrlist.cc
+
+**** Changes from 2016.09.19 (riesmeier)
+
+- Fixed compiler warnings on unused variables:
+ Fixed compiler warnings on unused variables reported by Visual Studio 2010.
+ Affects: dcmjpls/libcharls/intrface.cc
+
+- Fixed linker errors on non-gcc platforms:
+ Fixed linker errors on non-gcc platforms that occurred after adding new
+ "dcmsr" test cases (which make use of the class DSRListOfItems).
+ Affects: dcmsr/tests/tsrlist.cc
+
+**** Changes from 2016.09.17 (riesmeier)
+
+- Added missing source file (new test cases):
+ Added new source file that was missing for the previous commit.
+ Added: dcmsr/tests/tsrlist.cc
+
+**** Changes from 2016.09.16 (hasenpusch)
+
+- Fixed include paths in DCMTK's package config file:
+ Fixed exporting wrong module include paths inside generated DCMTKConfig.cmake.
+ The specified module include paths went two levels too deep into the folder
+ hierarchy, leading to system include shadowing under certain circumstances.
+ This fixes DCMTK bug #692.
+ Thanks to forum user jakecobb for reporting this bug.
+ Affects: CMake/DCMTKConfig.cmake.in
+
+**** Changes from 2016.09.16 (riesmeier)
+
+- Enhanced template class DSRListOfItems:
+ Added new methods addItems() and getItems() to the template class
+ DSRListOfItems. These new methods expect a vector as a parameter
+ and thus allow for adding/getting multiple items with a single call.
+ Closes DCMTK Feature #572.
+ Affects: dcmsr/include/dcmtk/dcmsr/dsrtlist.h
+ dcmsr/tests/CMakeLists.txt
+ dcmsr/tests/Makefile.in
+ dcmsr/tests/tests.cc
+
+**** Changes from 2016.09.15 (schlamelcher)
+
+- Further fixes for OFvariant:
+ OFvariant's copy constructor and assignment operator are now disabled for
+ types that can not be converted to one of the variant's alternatives (using
+ OFenable_if).
+ Fixed OFvariant's fallback implementation for systems that do not provide
+ memory alignment facilities.
+ Affects: ofstd/include/dcmtk/ofstd/variadic/variant.h
+
+**** Changes from 2016.09.14 (riesmeier)
+
+- Fixed minor issues in modules' documentation:
+ Fixed minor issues in modules' documentation of "dcmpmap" und "dcmtract".
+ Some of these are related to Doxygen (the tool that is used for generating
+ the rendered output) and some have been fixed for reasons of consistency
+ with other DCMTK modules.
+ Affects: dcmpmap/docs/dcmpmap.dox
+ dcmtract/docs/dcmtract.dox
+
+**** Changes from 2016.09.14 (schlamelcher)
+
+- Fixes for OFvariant, dcmiod, dcmseg and dcmpmap:
+ Removed DLL export macros from several template classes as this does not seem
+ to work for templates.
+ Introduced a workaround for older C++ compilers regarding base class
+ definitions in derived classes, e.g. OFvariant<int,char> will not be available
+ as OFvariant (without the template parameters) in derived classes on these
+ compilers. OFvariant and DcmIODImage now define the types 'variant' and
+ 'IODImage' resp. instead, which may be used in derived classes for referring
+ to the resp. base class or one of its methods etc.
+ Affects: dcmiod/include/dcmtk/dcmiod/iodimage.h
+ dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h
+ dcmpmap/libsrc/dpmparametricmapbase.cc
+ dcmseg/libsrc/segdoc.cc
+ ofstd/include/dcmtk/ofstd/variadic/variant.h
+
+**** Changes from 2016.09.13 (schlamelcher)
+
+- Trying possible fix for OFvariant vs DLLs.
+ Affects: ofstd/include/dcmtk/ofstd/ofutil.h
+ ofstd/libsrc/ofstd.cc
+
+**** Changes from 2016.09.12 (riesmeier)
+
+- Updated coding scheme designator (CP-1567):
+ Updated coding scheme designator for CID 5000 (Languages) based on recently
+ approved CP-1567: The designator changed from "IETF4646" to "RFC5646".
+ Affects: dcmsr/include/dcmtk/dcmsr/cmr/cid5000.h
+ dcmsr/libcmr/cid5000.cc
+
+- Added support for recently approved CPs:
+ Added support for CP-1418 and CP-1586 to the data dictionary.
+ These CPs were approved during last week's DICOM WG-06 t-con.
+ Also fixed an attribute name change in "dcmrt" due to retirement.
+ Affects: dcmdata/data/dicom.dic
+ dcmdata/include/dcmtk/dcmdata/dcdeftag.h
+ dcmdata/libsrc/dcdictbi.cc
+ dcmrt/libsrc/drtarics.cc
+
+- Added support for new UIDs from Supplement 121:
+ Added support for new Storage and Query/Retrieve SOP Class UIDs from
+ Supplement 121 (CT Protocol Storage).
+ Affects: dcmdata/include/dcmtk/dcmdata/dcuid.h
+ dcmdata/libsrc/dcuid.cc
+ dcmnet/docs/movescu.man
+ dcmnet/docs/storescp.man
+ dcmnet/etc/storescp.cfg
+ dcmnet/etc/storescu.cfg
+ dcmqrdb/docs/dcmqrscp.man
+
+- Added support for Supplement 121 to dictionary:
+ Added support for the final text version of Supplement 121 (CT Protocol
+ Storage) to the data dictionary.
+ Affects: dcmdata/data/dicom.dic
+ dcmdata/include/dcmtk/dcmdata/dcdeftag.h
+ dcmdata/libsrc/dcdictbi.cc
+
+**** Changes from 2016.09.10 (onken)
+
+- Corrected value checking and setters for VM > 1:
+ Some value checks have been filling the VM parameter incorrectly by providing
+ the value type (like "1C") instead, leading to an error if value checking is
+ not disabled.
+ Thanks to Andrey Fedorov <andrey.fedorov@gmail.com> for the bug report.
+ Also, some type of values (e.g. Floating Point Value) allow more than one
+ value which is now possible using an optional parameter in the related setter()
+ method.
+ Affects: dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h
+ dcmiod/libsrc/iodcontentitemmacro.cc
+
+**** Changes from 2016.09.05 (onken)
+
+- Fixed typos and other enhancements.
+ Affects: dcmpmap/docs/dcmpmap.dox
+
+**** Changes from 2016.09.02 (onken)
+
+- Make sure setValueType() sets correct string value:
+ Due to a copy/paste error setValueType() has constantly set the value "CODE"
+ instead of the value provided by the user.
+ Affects: dcmiod/libsrc/iodcontentitemmacro.cc
+
+**** Changes from 2016.09.01 (onken)
+
+- Remove default value for first parameter:
+ Remove default value for first method parameter in constructor
+ since otherwise Visual Studio moans that it overlaps with the
+ default constructor (which is undefined and private, though).
+ Affects: dcmiod/include/dcmtk/dcmiod/iodmacro.h
+
+- Introduced new module dcmpmap for Parametric Maps:
+ The new dcmpmap module offers an API for creation, loading, accessing and
+ saving DICOM Parametric Map objects as introduced in DICOM Supplement 172.
+ All binary data types supported by the standard (16 bit signed and unsigned
+ integer as well as 32 bit and 64 bit floating point data) are handled by the
+ library.
+ Acknowledgement: This work has been supported in part by the "QIICR" project.
+ QIICR is supported by NIH National Cancer Institute, award U24 CA180918.
+ Added: dcmfg/include/dcmtk/dcmfg/fgframeanatomy.h
+ dcmfg/include/dcmtk/dcmfg/fgidentpixeltransform.h
+ dcmfg/include/dcmtk/dcmfg/fgparametricmapframetype.h
+ dcmfg/libsrc/fgframeanatomy.cc
+ dcmfg/libsrc/fgidentpixeltransform.cc
+ dcmfg/libsrc/fgparametricmapframetype.cc
+ dcmiod/include/dcmtk/dcmiod/iodcontentitemmacro.h
+ dcmiod/include/dcmtk/dcmiod/modfloatingpointimagepixel.h
+ dcmiod/include/dcmtk/dcmiod/modimagepixelbase.h
+ dcmiod/include/dcmtk/dcmiod/modimagepixelvariant.h
+ dcmiod/libsrc/iodcontentitemmacro.cc
+ dcmiod/libsrc/modfloatingpointimagepixel.cc
+ dcmiod/libsrc/modimagepixelbase.cc
+ dcmiod/tests/timagepixel.cc
+ dcmpmap/CMakeLists.txt
+ dcmpmap/Makefile.in
+ dcmpmap/configure
+ dcmpmap/data/Makefile.in
+ dcmpmap/docs/Makefile.in
+ dcmpmap/docs/dcmpmap.dox
+ dcmpmap/etc/Makefile.in
+ dcmpmap/include/CMakeLists.txt
+ dcmpmap/include/Makefile.in
+ dcmpmap/include/dcmtk/dcmpmap/dpmdef.h
+ dcmpmap/include/dcmtk/dcmpmap/dpmmodparametricmapimage.h
+ dcmpmap/include/dcmtk/dcmpmap/dpmmodparametricmapseries.h
+ dcmpmap/include/dcmtk/dcmpmap/dpmparametricmapbase.h
+ dcmpmap/include/dcmtk/dcmpmap/dpmparametricmapiod.h
+ dcmpmap/include/dcmtk/dcmpmap/dpmtypes.h
+ dcmpmap/libsrc/CMakeLists.txt
+ dcmpmap/libsrc/Makefile.dep
+ dcmpmap/libsrc/Makefile.in
+ dcmpmap/libsrc/dpmmodparametricmapimage.cc
+ dcmpmap/libsrc/dpmmodparametricmapseries.cc
+ dcmpmap/libsrc/dpmparametricmapbase.cc
+ dcmpmap/libsrc/dpmparametricmapiod.cc
+ dcmpmap/libsrc/dpmtypes.cc
+ dcmpmap/tests/Makefile.dep
+ dcmpmap/tests/Makefile.in
+ ofstd/include/dcmtk/ofstd/ofvriant.h
+ ofstd/include/dcmtk/ofstd/variadic/helpers.h
+ ofstd/include/dcmtk/ofstd/variadic/variant.h
+ ofstd/tests/tvariant.cc
+ Removed: dcmiod/libsrc/iodimage.cc
+ Affects: CMakeLists.txt
+ Makefile
+ config/modules
+ dcmdata/include/dcmtk/dcmdata/dcerror.h
+ dcmfg/include/dcmtk/dcmfg/fgderimg.h
+ dcmfg/include/dcmtk/dcmfg/fgfracon.h
+ dcmfg/include/dcmtk/dcmfg/fginterface.h
+ dcmfg/include/dcmtk/dcmfg/fgrealworldvaluemapping.h
+ dcmfg/include/dcmtk/dcmfg/fgtypes.h
+ dcmfg/include/dcmtk/dcmfg/stack.h
+ dcmfg/libsrc/CMakeLists.txt
+ dcmfg/libsrc/Makefile.dep
+ dcmfg/libsrc/fgbase.cc
+ dcmfg/libsrc/fgderimg.cc
+ dcmfg/libsrc/fgfact.cc
+ dcmfg/libsrc/fgfracon.cc
+ dcmfg/libsrc/fgframevoilut.cc
+ dcmfg/libsrc/fgimagedatatype.cc
+ dcmfg/libsrc/fginterface.cc
+ dcmfg/libsrc/fgpixmsr.cc
+ dcmfg/libsrc/fgplanor.cc
+ dcmfg/libsrc/fgplanorvol.cc
+ dcmfg/libsrc/fgplanpo.cc
+ dcmfg/libsrc/fgplanposvol.cc
+ dcmfg/libsrc/fgrealworldvaluemapping.cc
+ dcmfg/libsrc/fgseg.cc
+ dcmfg/libsrc/fgtypes.cc
+ dcmfg/libsrc/fgusimagedescription.cc
+ dcmiod/include/dcmtk/dcmiod/iodcommn.h
+ dcmiod/include/dcmtk/dcmiod/iodimage.h
+ dcmiod/include/dcmtk/dcmiod/iodmacro.h
+ dcmiod/include/dcmtk/dcmiod/iodutil.h
+ dcmiod/include/dcmtk/dcmiod/modbase.h
+ dcmiod/include/dcmtk/dcmiod/modcommoninstanceref.h
+ dcmiod/include/dcmtk/dcmiod/modenhequipment.h
+ dcmiod/include/dcmtk/dcmiod/modequipment.h
+ dcmiod/include/dcmtk/dcmiod/modfor.h
+ dcmiod/include/dcmtk/dcmiod/modimagepixel.h
+ dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h
+ dcmiod/include/dcmtk/dcmiod/modsynchronisation.h
+ dcmiod/libsrc/CMakeLists.txt
+ dcmiod/libsrc/Makefile.dep
+ dcmiod/libsrc/Makefile.in
+ dcmiod/libsrc/iodcommn.cc
+ dcmiod/libsrc/iodmacro.cc
+ dcmiod/libsrc/modbase.cc
+ dcmiod/libsrc/modcommoninstanceref.cc
+ dcmiod/libsrc/modenhequipment.cc
+ dcmiod/libsrc/modequipment.cc
+ dcmiod/libsrc/modfor.cc
+ dcmiod/libsrc/modimagepixel.cc
+ dcmiod/libsrc/modmultiframedimension.cc
+ dcmiod/libsrc/modmultiframefg.cc
+ dcmiod/libsrc/modsynchronization.cc
+ dcmiod/libsrc/modusfor.cc
+ dcmiod/tests/CMakeLists.txt
+ dcmiod/tests/Makefile.dep
+ dcmiod/tests/Makefile.in
+ dcmiod/tests/tests.cc
+ dcmnet/libsrc/dstorscu.cc
+ dcmseg/include/dcmtk/dcmseg/segdoc.h
+ dcmseg/libsrc/Makefile.dep
+ dcmseg/libsrc/segdoc.cc
+ dcmtract/libsrc/Makefile.dep
+ doxygen/htmldocs.dox
+ ofstd/include/dcmtk/ofstd/oftraits.h
+ ofstd/include/dcmtk/ofstd/ofutil.h
+ ofstd/libsrc/Makefile.dep
+ ofstd/libsrc/ofstd.cc
+ ofstd/tests/CMakeLists.txt
+ ofstd/tests/Makefile.dep
+ ofstd/tests/Makefile.in
+ ofstd/tests/tests.cc
+
+**** Changes from 2016.08.23 (riesmeier)
+
+- Fixed typos in comments and log output.
+ Affects: config/Makefile.def.in
+ dcmnet/libsrc/dulparse.cc
+
+**** Changes from 2016.08.22 (onken)
+
+- Optimized iterator usage to speed up execution.
+ Affects: dcmfg/libsrc/fg.cc
+ dcmfg/libsrc/fginterface.cc
+
+**** Changes from 2016.08.06 (onken)
+
+- Updated copyright.
+ Affects: dcmiod/include/dcmtk/dcmiod/iodcommn.h
+ dcmiod/libsrc/iodcommn.cc
+
+- Create SourceImageItem from DcmDataset as input:
+ Thanks to Christian Herz <cherz@bwh.harvard.edu> for the suggested patch.
+ Affects: dcmfg/include/dcmtk/dcmfg/fgderimg.h
+ dcmfg/libsrc/fgderimg.cc
+
+- Moved import..() functionality into IODCommon:
+ Moved import...() into base class of IOD classes in order to make it usable
+ from all derived IOD implementations, e.g. Segmentation IOD in dcmseg, which
+ directly offered this function before, and Parametric Maps IOD in dcmpmap.
+ Affects: dcmiod/include/dcmtk/dcmiod/iodcommn.h
+ dcmiod/libsrc/iodcommn.cc
+ dcmseg/include/dcmtk/dcmseg/segdoc.h
+ dcmseg/libsrc/segdoc.cc
+
+**** Changes from 2016.08.03 (onken)
+
+- Switched VR and VM in comment.
+ Affects: dcmiod/include/dcmtk/dcmiod/modgeneralstudy.h
+
+**** Changes from 2016.07.27 (riesmeier)
+
+- Fixed warnings with Clang -Wparentheses-equality:
+ Fixed warnings reported by Clang compiler, which uses -Wparentheses-equality
+ by default, i.e. removed extraneous parentheses around equality comparison.
+ Also fixed various typos in comments.
+ Affects: dcmjpeg/libsrc/djcodece.cc
+
+**** Changes from 2016.07.25 (riesmeier)
+
+- Added explicit type cast to avoid warning:
+ Added explicit typecast to a parameter value in order to avoid a warning
+ reported by MSVC++ on Windows 64-bit systems.
+ Affects: dcmimgle/libsrc/dimoimg.cc
+
+- Changed type of local variable to avoid warning:
+ Changed type of local variable from size_t to unsigned long in order to
+ avoid a warning reported by MSVC++ on Windows 64-bit systems.
+ Affects: dcmjpeg/libsrc/ddpiimpl.cc
+
+**** Changes from 2016.07.19 (hasenpusch)
+
+- Fixed and refactored mutex & rwlock tests:
+ Made sure thread 2 starts after thread 1 claims the first lock.
+ Closes DCMTK bug #689.
+ Affects: ofstd/tests/tthread.cc
+
+**** Changes from 2016.07.18 (riesmeier)
+
+- Fixed typos in comments.
+ Affects: dcmsr/include/dcmtk/dcmsr/dsrsoprf.h
+ dcmsr/libcmr/cid5000.cc
+ oflog/include/dcmtk/oflog/oflog.h
+ oflog/libsrc/oflog.cc
+
+**** Changes from 2016.07.08 (hasenpusch)
+
+- Fixed potential buffer overflow in libcharls:
+ Libcharls' encoding facility now reallocates the given target buffer if
+ the initial capacity happens to be too small.
+ Closes DCMTK bug #688.
+ Affects: dcmjpls/libcharls/decodstr.h
+ dcmjpls/libcharls/encodstr.h
+ dcmjpls/libcharls/header.cc
+ dcmjpls/libcharls/intrface.cc
+ dcmjpls/libcharls/intrface.h
+ dcmjpls/libcharls/pubtypes.h
+ dcmjpls/libcharls/scan.h
+ dcmjpls/libcharls/streams.h
+ dcmjpls/libcharls/util.h
+ dcmjpls/libsrc/djcodece.cc
+
**** Changes from 2016.06.30 (schlamelcher)
- Updated CHANGES.361 for new development snapshot.
# could be handy for archiving the generated documentation or if some version
# control system is used.
-PROJECT_NUMBER = "Version @DCMTK_VERSION@ 20160630"
+PROJECT_NUMBER = "Version @DCMTK_VERSION@ 20161102"
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
\li \ref mod_dcmjpeg
\li \ref mod_dcmjpls
\li \ref mod_dcmnet
+\li \ref mod_dcmpmap
\li \ref mod_dcmpstat
\li \ref mod_dcmqrdb
\li \ref mod_dcmrt
# could be handy for archiving the generated documentation or if some version
# control system is used.
-PROJECT_NUMBER = "@DCMTK_VERSION@ 20160630"
+PROJECT_NUMBER = "@DCMTK_VERSION@ 20161102"
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
-.TH "dcm2pdf" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcm2pdf" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcm2pdf \- Extract PDF file from DICOM encapsulated PDF
-.TH "dcm2pnm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcm2pnm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcm2pnm \- Convert DICOM images to PGM/PPM, PNG, TIFF or BMP
-.TH "dcm2xml" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcm2xml" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcm2xml \- Convert DICOM file and data set to XML
-.TH "dcmcjpeg" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmcjpeg" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmcjpeg \- Encode DICOM file to JPEG transfer syntax
-.TH "dcmcjpls" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmcjpls" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmcjpls \- Encode DICOM file to JPEG-LS transfer syntax
-.TH "dcmconv" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmconv" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmconv \- Convert DICOM file encoding
-.TH "dcmcrle" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmcrle" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmcrle \- Encode DICOM file to RLE transfer syntax
-.TH "dcmdjpeg" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmdjpeg" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmdjpeg \- Decode JPEG-compressed DICOM file
-.TH "dcmdjpls" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmdjpls" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmdjpls \- Decode JPEG-LS compressed DICOM file
-.TH "dcmdrle" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmdrle" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmdrle \- Decode RLE-compressed DICOM file
-.TH "dcmdspfn" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmdspfn" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmdspfn \- Export standard display curves to a text file
-.TH "dcmdump" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmdump" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmdump \- Dump DICOM file and data set
-.TH "dcmftest" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmftest" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmftest \- Test if file uses DICOM part 10 format
-.TH "dcmgpdir" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmgpdir" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmgpdir \- Create a general purpose DICOMDIR
-.TH "dcmj2pnm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmj2pnm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmj2pnm \- Convert DICOM images to PGM/PPM, PNG, TIFF, JPEG or BMP
-.TH "dcml2pnm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcml2pnm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcml2pnm \- Convert DICOM images to PGM/PPM, PNG, TIFF or BMP
-.TH "dcmmkcrv" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmmkcrv" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmmkcrv \- Add 2D curve data to image
-.TH "dcmmkdir" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmmkdir" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmmkdir \- Create a DICOMDIR file
-.TH "dcmmklut" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmmklut" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmmklut \- Create DICOM look-up tables
-.TH "dcmodify" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmodify" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmodify \- Modify DICOM files
-.TH "dcmp2pgm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmp2pgm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmp2pgm \- Read DICOM image and presentation state and render bitmap
-.TH "dcmprscp" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmprscp" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmprscp \- DICOM basic grayscale print management SCP
-.TH "dcmprscu" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmprscu" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmprscu \- Print spooler for presentation state viewer
-.TH "dcmpschk" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmpschk" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmpschk \- Checking tool for presentation states
-.TH "dcmpsmk" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmpsmk" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmpsmk \- Create DICOM grayscale softcopy presentation state
-.TH "dcmpsprt" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmpsprt" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmpsprt \- Read DICOM images and presentation states and render print job
-.TH "dcmpsrcv" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmpsrcv" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmpsrcv \- Network receive for presentation state viewer
-.TH "dcmpssnd" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmpssnd" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmpssnd \- Network send for presentation state viewer
-.TH "dcmqridx" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmqridx" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmqridx \- Register a DICOM image file in an image database index file
-.TH "dcmqrscp" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmqrscp" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmqrscp \- DICOM image archive (central test node)
RETIRED_StandalonePETCurveStorage 1.2.840.10008.5.1.4.1.1.129
EnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.130
BasicStructuredDisplayStorage 1.2.840.10008.5.1.4.1.1.131
+CTDefinedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.1
+CTPerformedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.2
RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
-.TH "dcmqrti" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmqrti" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmqrti \- The Terminal Initiator Telnet Client Program
-.TH "dcmquant" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmquant" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmquant \- Convert DICOM color images to palette color
-.TH "dcmrecv" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmrecv" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmrecv \- Simple DICOM storage SCP (receiver)
-.TH "dcmscale" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmscale" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmscale \- Scale DICOM images
-.TH "dcmsend" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmsend" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmsend \- Simple DICOM storage SCU (sender)
-.TH "dcmsign" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcmsign" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcmsign \- Sign and Verify DICOM Files
-.TH "dcod2lum" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dcod2lum" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dcod2lum \- Convert hardcopy characteristic curve file to softcopy format
-.TH "dconvlum" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dconvlum" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dconvlum \- Convert VeriLUM files to DCMTK display files
-.TH "drtdump" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "drtdump" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
drtdump \- Dump DICOM RT file and data set
-.TH "dsr2html" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dsr2html" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dsr2html \- Render DICOM SR file and data set to HTML/XHTML
-.TH "dsr2xml" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dsr2xml" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dsr2xml \- Convert DICOM SR file and data set to XML
-.TH "dsrdump" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dsrdump" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dsrdump \- Dump DICOM SR file and data set
-.TH "dump2dcm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "dump2dcm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
dump2dcm \- Convert ASCII dump to DICOM file
-.TH "echoscu" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "echoscu" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
echoscu \- DICOM verification (C-ECHO) SCU
-.TH "findscu" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "findscu" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
findscu \- DICOM query (C-FIND) SCU
-.TH "getscu" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "getscu" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
getscu \- DICOM retrieve (C-GET) SCU
-.TH "img2dcm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "img2dcm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
img2dcm \- Convert standard image formats into DICOM format
-.TH "movescu" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "movescu" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
movescu \- DICOM retrieve (C-MOVE) SCU
RETIRED_StandalonePETCurveStorage 1.2.840.10008.5.1.4.1.1.129
EnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.130
BasicStructuredDisplayStorage 1.2.840.10008.5.1.4.1.1.131
+CTDefinedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.1
+CTPerformedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.2
RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
-.TH "pdf2dcm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "pdf2dcm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
pdf2dcm \- Convert PDF file to DICOM
-.TH "storescp" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "storescp" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
storescp \- DICOM storage (C-STORE) SCP
RETIRED_StandalonePETCurveStorage 1.2.840.10008.5.1.4.1.1.129
EnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.130
BasicStructuredDisplayStorage 1.2.840.10008.5.1.4.1.1.131
+CTDefinedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.1
+CTPerformedProcedureProtocolStorage 1.2.840.10008.5.1.4.1.1.200.2
RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
-.TH "storescu" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "storescu" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
storescu \- DICOM storage (C-STORE) SCU
-.TH "termscu" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "termscu" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
termscu \- DICOM termination SCU
-.TH "wlmscpfs" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "wlmscpfs" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
wlmscpfs \- DICOM Basic Worklist Management SCP (based on data files)
-.TH "xml2dcm" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "xml2dcm" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
xml2dcm \- Convert XML document to DICOM file or data set
-.TH "xml2dsr" 1 "Thu Jun 30 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
+.TH "xml2dsr" 1 "Wed Nov 2 2016" "Version 3.6.1" "OFFIS DCMTK" \" -*- nroff -*-
.nh
.SH NAME
xml2dsr \- Convert DICOM SR file and data set to XML
/*
*
- * Copyright (C) 2009-2011, OFFIS e.V.
+ * Copyright (C) 2009-2016, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
ERROR_LOG_LEVEL = dcmtk::log4cplus::ERROR_LOG_LEVEL,
/// fatal: very severe error events that will presumably lead the application to abort
FATAL_LOG_LEVEL = dcmtk::log4cplus::FATAL_LOG_LEVEL,
- /// internal: turn off logging competely
+ /// internal: turn off logging completely
OFF_LOG_LEVEL = dcmtk::log4cplus::OFF_LOG_LEVEL
};
/*
*
- * Copyright (C) 2009-2011, OFFIS e.V.
+ * Copyright (C) 2009-2016, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
app.checkValue(cmd.getValue(logConfig));
- // check wether config file exists at all and is readable
+ // check whether config file exists at all and is readable
if (!OFStandard::fileExists(logConfig))
app.printError("Specified --log-config file does not exist");
if (!OFStandard::isReadable(logConfig))
struct OFconditional<OFFalse,T,F> { typedef F type; };
template<typename T,T Value>
-struct OFintegral_constant { static const T value = Value; };
+struct OFintegral_constant { typedef OFintegral_constant type; static const T value = Value; };
template<typename T,T Value>
const T OFintegral_constant<T,Value>::value;
struct OFtuple_content<>
{
OFtuple_content() {}
- template<typename X>
- OFtuple_content(const X&) {}
+ OFtuple_content(va_list*) {}
template<typename X>
void assign(const X&) {}
template<typename X>
#ifdef DCMTK_USE_CXX11_STL
#include <utility>
+#include <tuple>
#define OFmove std::move
#define OFswap std::swap
-#define OFget std::get
#define OFMake_pair std::make_pair
+template<std::size_t Index,typename T>
+constexpr auto OFget( T&& t ) -> decltype( std::get<Index>( std::forward<T>( t ) ) )
+{
+ return std::get<Index>( std::forward<T>( t ) );
+}
+
+template<typename X,typename T>
+constexpr auto OFget( T&& t ) -> decltype( std::get<X>( std::forward<T>( t ) ) )
+{
+ return std::get<X>( std::forward<T>( t ) );
+}
+
template<typename K,typename V>
using OFPair = std::pair<K,V>;
#endif // NOT C++11
+#ifndef DOXYGEN
+
+// OFin_place hacks, look at the doxygen documentation instead if
+// you know what's good for you!
+class DCMTK_OFSTD_EXPORT OFin_place_tag { OFin_place_tag(); };
+typedef OFin_place_tag(&OFin_place_t)();
+#define OFin_place_type_t(T) OFin_place_tag(&)(T&)
+#define OFin_place_index_t(I) OFin_place_tag(&)(OFintegral_constant<size_t,I>&)
+DCMTK_OFSTD_EXPORT OFin_place_tag OFin_place();
+template<typename T>
+OFin_place_tag OFin_place(T&) { return OFin_place(); }
+template<size_t I>
+OFin_place_tag OFin_place(OFintegral_constant<size_t,I>&) { return OFin_place(); }
+
+#else // NOT DOXYGEN
+
+/** @defgroup OFin_place_helpers_brief
+ * @details Tools for in-place construction of objects, e.g. certain OFvariant alternatives.
+ * @defgroup OFin_place_helpers Tools for in-place construction
+ * @details
+ * <b><em style="color:#7f0000">#include</em> <span class="keyword">"dcmtk/ofstd/ofutil.h"</span></b><br><br>
+ * @copydoc OFin_place_helpers_brief
+ * <table class="memberdecls">
+ * <tr class="heading">
+ * <td colspan="2"><div><h2 class="groupheader">Type Definitions</h2></div></td>
+ * </tr>
+ * <tr>
+ * <td class="memItemLeft" align="right" valign="top"><span class="keyword">typedef</span> <em style="color:#7f0000;opacity:.7">unspecified</em></td>
+ * <td class="memItemRight" valign="bottom"><a href="#OFin_place_t">OFin_place_t</a></td>
+ * </tr>
+ * <tr>
+ * <td class="mdescLeft"></td>
+ * <td class="mdescRight">A type for tagging an in-place constructor as such. <a href="#OFin_place_t">More...</a></td>
+ * </tr>
+ * <tr><td class="memSeparator" colspan="2"></td></tr>
+ * <tr><td class="memTemplParams" colspan="2">template<typename T></td></tr>
+ * <tr>
+ * <td class="memItemLeft" align="right" valign="top"><span class="keyword">typedef</span> <em style="color:#7f0000;opacity:.7">unspecified</em></td>
+ * <td class="memItemRight" valign="bottom"><a href="#OFin_place_type_t">OFin_place_type_t(T)</a></td>
+ * </tr>
+ * <tr>
+ * <td class="mdescLeft"></td>
+ * <td class="mdescRight">A type for tagging an in-place constructor for a certain type as such. <a href="#OFin_place_type_t">More...</a></td>
+ * </tr>
+ * <tr><td class="memSeparator" colspan="2"></td></tr>
+ * <tr><td class="memTemplParams" colspan="2">template<size_t I></td></tr>
+ * <tr>
+ * <td class="memItemLeft" align="right" valign="top"><span class="keyword">typedef</span> <em style="color:#7f0000;opacity:.7">unspecified</em></td>
+ * <td class="memItemRight" valign="bottom"><a href="#OFin_place_index_t">OFin_place_index_t(I)</a></td>
+ * </tr>
+ * <tr>
+ * <td class="mdescLeft"></td>
+ * <td class="mdescRight">A type for tagging an in-place constructor based on a certain index as such. <a href="#OFin_place_index_t">More...</a></td>
+ * </tr>
+ * <tr><td class="memSeparator" colspan="2"></td></tr>
+ * </table>
+ * <table class="memberdecls">
+ * <tr class="heading">
+ * <td colspan="2"><div><h2 class="groupheader">Global Constants</h2></div></td>
+ * </tr>
+ * <tr>
+ * <td class="memItemLeft" align="right" valign="top"><a href="#OFin_place_t">OFin_place_t</a></td>
+ * <td class="memItemRight" valign="bottom"><a href="#OFin_place_generic">OFin_place</a></td>
+ * </tr>
+ * <tr>
+ * <td class="mdescLeft"></td>
+ * <td class="mdescRight">
+ * A constant of type <a href="#OFin_place_t">OFin_place_t</a> that may be used for in-place construction.
+ * <a href="#OFin_place_generic">More...</a>
+ * </td>
+ * </tr>
+ * <tr><td class="memSeparator" colspan="2"></td></tr>
+ * <tr><td class="memTemplParams" colspan="2">template<typename T></td></tr>
+ * <tr>
+ * <td class="memItemLeft" align="right" valign="top"><a href="#OFin_place_type_t">OFin_place_type_t(T)</a></td>
+ * <td class="memItemRight" valign="bottom"><a href="#OFin_place_type">OFin_place<T></a></td>
+ * </tr>
+ * <tr>
+ * <td class="mdescLeft"></td>
+ * <td class="mdescRight">
+ * A constant of type <a href="#OFin_place_type_t">OFin_place_type_t(T)</a> that may be used for in-place construction.
+ * <a href="#OFin_place_type">More...</a>
+ * </td>
+ * </tr>
+ * <tr><td class="memSeparator" colspan="2"></td></tr>
+ * <tr><td class="memTemplParams" colspan="2">template<size_t I></td></tr>
+ * <tr>
+ * <td class="memItemLeft" align="right" valign="top"><a href="#OFin_place_index_t">OFin_place_index_t(I)</a></td>
+ * <td class="memItemRight" valign="bottom"><a href="#OFin_place_index">OFin_place<I></a></td>
+ * </tr>
+ * <tr>
+ * <td class="mdescLeft"></td>
+ * <td class="mdescRight">
+ * A constant of type <a href="#OFin_place_index_t">OFin_place_index_t(I)</a> that may be used for in-place construction.
+ * <a href="#OFin_place_index">More...</a>
+ * </td>
+ * </tr>
+ * <tr><td class="memSeparator" colspan="2"></td></tr>
+ * </table>
+ * <h2 class="groupheader">Type Definition Documentation</h2>
+ * @anchor OFin_place_t
+ * <div class="memitem">
+ * <div class="memproto">
+ * <div class="memname">
+ * <span class="keyword">typedef</span> <em style="color:#7f0000;opacity:.7">unspecified</em> OFin_place_t
+ * </div>
+ * </div>
+ * <div class="memdoc">
+ * <br>A type for tagging an in-place constructor as such.<br>
+ * <dl></dl>
+ * <b>Usage Example:</b><br>
+ * @code{.cpp}
+ * template<typename T>
+ * class Wrapper
+ * {
+ * public:
+ * // Will copy construct the wrapped value from a T.
+ * Wrapper( const T& t );
+ *
+ * // Will in-place construct the value from the given arguments,
+ * // calling T( arguments... ) internally, without unnecessary
+ * // copies.
+ * template<typename... Arguments>
+ * Wrapper( OFin_place_t, Arguments... arguments );
+ *
+ * private:
+ * // ... wrapper implementation ...
+ * };
+ * @endcode
+ * </div>
+ * </div>
+ * @anchor OFin_place_type_t
+ * <div class="memitem">
+ * <div class="memproto">
+ * <div class="memtemplate">template<typename T></div>
+ * <div class="memname">
+ * <span class="keyword">typedef</span> <em style="color:#7f0000;opacity:.7">unspecified</em> OFin_place_type_t(T)
+ * </div>
+ * </div>
+ * <div class="memdoc">
+ * <br>A type for tagging an in-place constructor for a certain type as such.
+ * <br>
+ * <dl class="tparams">
+ * <dt>Template Parameters<dt>
+ * <dd><span class="paramname">T</span> the type this in-pace constructor handles, i.e. the type that will be constructed.</dd>
+ * </dl>
+ * @note Pre C++11 compilers do not support alias templates, therefore, OFin_place_type_t is implemented
+ * using preprocessor macros internally. This is why you need to use curved brackets instead of angled ones.
+ *
+ * <b>Usage Example:</b><br>
+ * @code{.cpp}
+ * template<typename A,typename B>
+ * class Union
+ * {
+ * public:
+ * // Will copy construct the wrapped value as an A from a.
+ * Union( const A& a );
+ *
+ * // Will copy construct the wrapped value as a B from b.
+ * Union( const B& b );
+ *
+ * // Will in-place construct the value as an A from the given
+ * // arguments, calling A( arguments... ) internally, without
+ * // unnecessary copies.
+ * template<typename... Arguments>
+ * Union( OFin_place_type_t(A), Arguments... arguments );
+ *
+ * // Will in-place construct the value as a B from the given
+ * // arguments, calling B( arguments... ) internally, without
+ * // unnecessary copies.
+ * template<typename... Arguments>
+ * Union( OFin_place_type_t(B), Arguments... arguments );
+ *
+ * private:
+ * // ... union implementation ...
+ * };
+ * @endcode
+ * </div>
+ * </div>
+ * @anchor OFin_place_index_t
+ * <div class="memitem">
+ * <div class="memproto">
+ * <div class="memtemplate">template<size_t I></div>
+ * <div class="memname">
+ * <span class="keyword">typedef</span> <em style="color:#7f0000;opacity:.7">unspecified</em> OFin_place_index_t(I)
+ * </div>
+ * </div>
+ * <div class="memdoc">
+ * <br>A type for tagging an in-place constructor for a certain index as such.<br>
+ * <dl class="tparams">
+ * <dt>Template Parameters<dt>
+ * <dd>
+ * <span class="paramname">I</span> the index this in-pace constructor handles, i.e. the zero
+ * based index of the type that will be constructed.
+ * </dd>
+ * </dl>
+ * @note Pre C++11 compilers do not support alias templates, therefore, OFin_place_index_t is implemented
+ * using preprocessor macros internally. This is why you need to use curved brackets instead of angled ones.
+ *
+ * <b>Usage Example:</b><br>
+ * @code{.cpp}
+ * template<typename A,typename B>
+ * class Union
+ * {
+ * public:
+ * // Will copy construct the wrapped value as an A from a.
+ * Union( const A& a );
+ *
+ * // Will copy construct the wrapped value as a B from b.
+ * Union( const B& b );
+ *
+ * // Will in-place construct the value as an A from the given
+ * // arguments, calling A( arguments... ) internally, without
+ * // unnecessary copies.
+ * // This will even work if A and B refer to the same type.
+ * template<typename... Arguments>
+ * Union( OFin_place_index_t(0), Arguments... arguments );
+ *
+ * // Will in-place construct the value as a B from the given
+ * // arguments, calling B( arguments... ) internally, without
+ * // unnecessary copies.
+ * // This will even work if A and B refer to the same type.
+ * template<typename... Arguments>
+ * Union( OFin_place_index_t(1), Arguments... arguments );
+ *
+ * private:
+ * // ... union implementation ...
+ * };
+ * @endcode
+ * </div>
+ * </div>
+ * <h2 class="groupheader">Global Constant Documentation</h2>
+ * @anchor OFin_place_generic
+ * <div class="memitem">
+ * <div class="memproto">
+ * <div class="memname">
+ * <a href="#OFin_place_t">OFin_place_t</a> OFin_place
+ * </div>
+ * </div>
+ * <div class="memdoc">
+ * <br>A constant of type <a href="#OFin_place_t">OFin_place_t</a> that may be used for in-place construction.<br>
+ * @remarks OFin_place is actually an overloaded function, but instead of calling it
+ * (which one should never do), its address is used as a tag, since the type of
+ * its address differs depending on which overload and template parameters are used.
+ * See http://en.cppreference.com/w/cpp/utility/in_place for more information.
+ *
+ * <b>Usage Example:</b><br>
+ * @code{.cpp}
+ * template<typename T>
+ * class Wrapper; // see OFin_place_t example
+ * // ...
+ * // will construct an OFString and then copy construct the value in the wrapper
+ * Wrapper<OFString>( "Hello World" );
+ * // will in-place construct the value in the wrapper
+ * Wrapper<OFString>( OFin_place, "Hello World" );
+ * // this also works with multiple arguments:
+ * // will take only the fist five characters of the const char*
+ * Wrapper<OFString>( OFin_place, "Hello World", 5 );
+ * @endcode
+ * </div>
+ * </div>
+ * @anchor OFin_place_type
+ * <div class="memitem">
+ * <div class="memproto">
+ * <div class="memtemplate">template<typename T></div>
+ * <div class="memname">
+ * <a href="#OFin_place_type_t">OFin_place_type_t(T)</a> OFin_place<T>
+ * </div>
+ * </div>
+ * <div class="memdoc">
+ * <br>A constant of type <a href="#OFin_place_type_t">OFin_place_type_t(T)</a> that may be used for in-place construction.<br>
+ * <dl class="tparams">
+ * <dt>Template Parameters<dt>
+ * <dd><span class="paramname">T</span> the type for selecting an in-pace constructor, i.e. the type that will be constructed.</dd>
+ * </dl>
+ * @remarks OFin_place is actually an overloaded function, but instead of calling it
+ * (which one should never do), its address is used as a tag, since the type of
+ * its address differs depending on which overload and template parameters are used.
+ * See http://en.cppreference.com/w/cpp/utility/in_place for more information.
+ *
+ * <b>Usage Example:</b><br>
+ * @code{.cpp}
+ * template<typename A,typename B>
+ * class Union; // see OFin_place_type_t example
+ * // ...
+ * // will construct an OFString and then copy construct the value inside the union
+ * Union<int,OFString>( OFString( "Hello World" ) );
+ * // will in-place construct an OFString value inside the union
+ * // with only the fist five characters
+ * Union<int,OFString>( OFin_place<OFString>, "Hello World", 5 );
+ * // will construct an integer value inside the union by casting
+ * // the address of the character array constant to int
+ * Union<int,OFString>( OFin_place<int>, "Hello World" );
+ * @endcode
+ * </div>
+ * </div>
+ * @anchor OFin_place_index
+ * <div class="memitem">
+ * <div class="memproto">
+ * <div class="memtemplate">template<size_t I></div>
+ * <div class="memname">
+ * <a href="#OFin_place_index_t">OFin_place_index_t(I)</a> OFin_place<I>
+ * </div>
+ * </div>
+ * <div class="memdoc">
+ * <br>A constant of type <a href="#OFin_place_index_t">OFin_place_index_t(I)</a> that may be used for in-place construction.<br>
+ * <dl class="tparams">
+ * <dt>Template Parameters<dt>
+ * <dd>
+ * <span class="paramname">I</span> the index for selecting an in-pace constructor, i.e. the
+ * zero based index of the type that will be constructed.
+ * </dd>
+ * </dl>
+ * @remarks OFin_place is actually an overloaded function, but instead of calling it
+ * (which one should never do), its address is used as a tag, since the type of
+ * its address differs depending on which overload and template parameters are used.
+ * See http://en.cppreference.com/w/cpp/utility/in_place for more information.
+ *
+ * <b>Usage Example:</b><br>
+ * @code{.cpp}
+ * template<typename A,typename B>
+ * class Union; // see OFin_place_index_t example
+ * // ...
+ * // error, cannot determine which constructor shall be used,
+ * // since both take an int
+ * Union<int,int>( 3 );
+ * // will in-place construct an int value inside the union
+ * // tagging it as an A
+ * Union<int,int>( OFin_place<0>, 3 );
+ * // will in-place construct an int value inside the union
+ * // tagging it as a B
+ * Union<int,int>( OFin_place<1>, 3 );
+ * @endcode
+ * </div>
+ * </div>
+ */
+
+#endif // DOXYGEN
+
#endif // OFUTIL_H
--- /dev/null
+/*
+ *
+ * Copyright (C) 2016, OFFIS e.V.
+ * All rights reserved. See COPYRIGHT file for details.
+ *
+ * This software and supporting documentation were developed by
+ *
+ * OFFIS e.V.
+ * R&D Division Health
+ * Escherweg 2
+ * D-26121 Oldenburg, Germany
+ *
+ *
+ * Module: ofstd
+ *
+ * Author: Jan Schlamelcher
+ *
+ * Purpose: Implementing tagged unions similar to C++17's std::variant.
+ *
+ */
+
+#ifndef OFVARIANT_H
+#define OFVARIANT_H
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+
+/** @file
+ * Declares OFvariant and related functionality.
+ * @defgroup ofvisit_variant OFvisit – OFvariant
+ * Apply a visitor to an OFvariant object.
+ * @see @ref ofget_variant "OFget" – @copybrief ofget_variant
+ * @defgroup ofget_variant OFget – OFvariant
+ * Get a pointer to the value stored in an OFvariant holding the selected alternative.
+ * @see @ref ofvisit_variant "OFvisit" – @copybrief ofvisit_variant
+ */
+
+#ifdef DCMTK_USE_CXX11_STL
+#include <type_traits>
+#include <cassert>
+#include <limits>
+
+template<std::size_t,typename... Alternatives>
+struct OFvariant_traits
+{
+ using is_constructible = std::false_type;
+ static constexpr inline std::size_t alignment() { return 1; }
+ static constexpr inline std::size_t size() { return 0; }
+ static void index_of();
+};
+
+template<std::size_t Index,typename Alternative0,typename... Alternatives>
+struct OFvariant_traits<Index,Alternative0,Alternatives...>
+: OFvariant_traits<Index+1,Alternatives...>
+{
+ using OFvariant_traits<Index+1,Alternatives...>::index_of;
+
+ using first_alternative = Alternative0;
+
+ static constexpr inline std::size_t alignment()
+ {
+ struct test { alignas(OFvariant_traits<Index+1,Alternatives...>::alignment()) first_alternative a; };
+ return alignof(test);
+ }
+
+ static constexpr inline std::size_t size()
+ {
+ return sizeof( first_alternative ) > OFvariant_traits<Index+1,Alternatives...>::size()
+ ?
+ sizeof( first_alternative )
+ :
+ OFvariant_traits<Index+1,Alternatives...>::size()
+ ;
+ }
+
+ static std::integral_constant<std::size_t,Index> index_of( first_alternative );
+};
+
+template<std::size_t AlternativeCount,typename... IndexAlternatives>
+struct OFvariant_select_index_type {};
+
+template<std::size_t AlternativeCount,typename IndexAlternative0,typename... IndexAlternatives>
+struct OFvariant_select_index_type<AlternativeCount,IndexAlternative0,IndexAlternatives...>
+{
+ using type = typename std::conditional
+ <
+ AlternativeCount <= std::numeric_limits<IndexAlternative0>::max(),
+ std::enable_if<true,IndexAlternative0>,
+ OFvariant_select_index_type<AlternativeCount,IndexAlternatives...>
+ >::type::type;
+};
+
+template<typename...>
+class OFvariant;
+
+template<std::size_t Index,typename Variant>
+struct OFvariant_alternative;
+
+template<std::size_t Index,typename Alternative0,typename... Alternatives>
+struct OFvariant_alternative<Index,OFvariant<Alternative0,Alternatives...>>
+: OFvariant_alternative<Index - 1,OFvariant<Alternatives...>> {};
+
+template<typename Alternative0,typename... Alternatives>
+struct OFvariant_alternative<0,OFvariant<Alternative0,Alternatives...>>
+{
+ using type = Alternative0;
+};
+
+template<typename... Alternatives>
+class OFvariant
+{
+ using traits = OFvariant_traits<0,Alternatives...>;
+ using index_type = typename OFvariant_select_index_type<sizeof...(Alternatives),std::uint8_t,std::uint16_t,std::uint32_t,std::uint64_t>::type;
+ template<typename T>
+ using index_of = decltype(traits::index_of(std::declval<T>()));
+
+public:
+ using variant = OFvariant;
+
+ OFvariant()
+ : m_Content()
+ , m_Index( 0 )
+ {
+ new (m_Content) typename traits::first_alternative;
+ }
+
+ template<typename T,index_type Index = index_of<T>()>
+ OFvariant( T&& t )
+ : m_Content()
+ , m_Index( Index )
+ {
+ new (m_Content) typename OFvariant_alternative<Index,OFvariant>::type( std::forward<T>( t ) );
+ }
+
+ OFvariant( OFvariant& rhs )
+ : OFvariant( const_cast<const OFvariant&>( rhs ) )
+ {
+
+ }
+
+ OFvariant( const OFvariant& rhs )
+ : m_Content()
+ , m_Index( rhs.index() )
+ {
+ copy_construct( rhs );
+ }
+
+ OFvariant( OFvariant&& rhs )
+ : m_Content()
+ , m_Index( rhs.index() )
+ {
+ move_construct( std::move( rhs ) );
+ }
+
+ template<typename T,index_type Index = index_of<T>()>
+ OFvariant& operator=( T&& t )
+ {
+ if( m_Index != Index )
+ {
+ destroy();
+ m_Index = Index;
+ new (m_Content) typename OFvariant_alternative<Index,OFvariant>::type( std::forward<T>( t ) );
+ }
+ else
+ {
+ *reinterpret_cast<typename OFvariant_alternative<Index,OFvariant>::type*>( m_Content ) = std::forward<T>( t );
+ }
+ return *this;
+ }
+
+ OFvariant& operator=( OFvariant& rhs )
+ {
+ return *this = const_cast<const OFvariant&>( rhs );
+ }
+
+ OFvariant& operator=( const OFvariant& rhs )
+ {
+ if( this != &rhs )
+ {
+ if( m_Index != rhs.m_Index )
+ {
+ destroy();
+ m_Index = rhs.m_Index;
+ copy_construct( rhs );
+ }
+ else
+ {
+ using functor = void(OFvariant::*)(const OFvariant&);
+ static const functor assignment[] =
+ {
+ &OFvariant::template copy_assign_alternative<Alternatives>...
+ };
+ (this->*assignment[m_Index])( rhs );
+ }
+ }
+ return *this;
+ }
+
+ OFvariant& operator=( OFvariant&& rhs )
+ {
+ if( this != &rhs )
+ {
+ if( m_Index != rhs.m_Index )
+ {
+ destroy();
+ m_Index = rhs.m_Index;
+ move_construct( std::move( rhs ) );
+ }
+ else
+ {
+ using functor = void(OFvariant::*)(OFvariant&&);
+ static const functor assignment[] =
+ {
+ &OFvariant::template move_assign_alternative<Alternatives>...
+ };
+ (this->*assignment[m_Index])( std::move( rhs ) );
+ }
+ }
+ return *this;
+ }
+
+ ~OFvariant()
+ {
+ destroy();
+ }
+
+ std::size_t index() const
+ {
+ return m_Index;
+ }
+
+private:
+ template<typename T,typename... Xs>
+ friend T* OFget( OFvariant<Xs...>* );
+ template<typename T,typename... Xs>
+ friend const T* OFget( const OFvariant<Xs...>* );
+ template<typename ReturnType,typename FN,typename... Xs>
+ friend ReturnType OFvisit( FN&&, OFvariant<Xs...>& );
+ template<typename ReturnType,typename FN,typename... Xs>
+ friend ReturnType OFvisit( FN&&, const OFvariant<Xs...>& );
+
+ template<typename Alternative>
+ void copy_construct_alternative( const OFvariant& rhs )
+ {
+ new (m_Content) Alternative( *reinterpret_cast<const Alternative*>( rhs.m_Content ) );
+ }
+
+ template<typename Alternative>
+ void move_construct_alternative( OFvariant&& rhs )
+ {
+ new (m_Content) Alternative( std::move( *reinterpret_cast<Alternative*>( rhs.m_Content ) ) );
+ }
+
+ template<typename Alternative>
+ void copy_assign_alternative( const OFvariant& rhs )
+ {
+ *reinterpret_cast<Alternative*>( m_Content ) = *reinterpret_cast<const Alternative*>( rhs.m_Content );
+ }
+
+ template<typename Alternative>
+ void move_assign_alternative( OFvariant&& rhs )
+ {
+ *reinterpret_cast<Alternative*>( m_Content ) = std::move( *reinterpret_cast<Alternative*>( rhs.m_Content ) );
+ }
+
+ template<typename Alternative>
+ void destructor()
+ {
+ reinterpret_cast<Alternative*>( m_Content )->~Alternative();
+ }
+
+ template<typename ReturnType,typename Alternative,typename FN>
+ ReturnType visit_alternative( FN&& fn )
+ {
+ return fn( *reinterpret_cast<Alternative*>( m_Content ) );
+ }
+
+ template<typename ReturnType,typename Alternative,typename FN>
+ ReturnType const_visit_alternative( FN&& fn ) const
+ {
+ return fn( *reinterpret_cast<const Alternative*>( m_Content ) );
+ }
+
+ void copy_construct( const OFvariant& rhs )
+ {
+ using functor = void(OFvariant::*)(const OFvariant&);
+ static const functor constructor[] =
+ {
+ &OFvariant::template copy_construct_alternative<Alternatives>...
+ };
+ assert( m_Index < sizeof...(Alternatives) );
+ (this->*constructor[m_Index])( rhs );
+ }
+
+ void move_construct( OFvariant&& rhs )
+ {
+ using functor = void(OFvariant::*)(OFvariant&&);
+ static const functor constructor[] =
+ {
+ &OFvariant::template move_construct_alternative<Alternatives>...
+ };
+ assert( m_Index < sizeof...(Alternatives) );
+ (this->*constructor[m_Index])( std::move( rhs ) );
+ }
+
+ void destroy()
+ {
+ using functor = void(OFvariant::*)();
+ static const functor destructor[] =
+ {
+ &OFvariant::template destructor<Alternatives>...
+ };
+ assert( m_Index < sizeof...(Alternatives) );
+ (this->*destructor[m_Index])();
+ }
+
+ alignas(traits::alignment()) std::uint8_t m_Content[traits::size()];
+ index_type m_Index;
+};
+
+template<std::size_t Index,typename X,typename T0,typename... Tn>
+struct OFvariant_index_of_type
+: OFvariant_index_of_type<Index + 1,X,Tn...> {};
+
+template<std::size_t Index,typename X,typename... Tn>
+struct OFvariant_index_of_type<Index,X,X,Tn...>
+: std::integral_constant<std::size_t,Index> {};
+
+template<typename T,typename... Alternatives>
+constexpr bool OFholds_alternative( const OFvariant<Alternatives...>& v )
+{
+ return v.index() == OFvariant_index_of_type<0,T,Alternatives...>::value;
+}
+
+template<typename T,typename... Alternatives>
+T* OFget( OFvariant<Alternatives...>* v )
+{
+ if( OFholds_alternative<T>( *v ) )
+ return reinterpret_cast<T*>( v->m_Content );
+ return nullptr;
+}
+
+template<typename T,typename... Alternatives>
+const T* OFget( const OFvariant<Alternatives...>* v )
+{
+ if( OFholds_alternative<T>( *v ) )
+ return reinterpret_cast<const T*>( v->m_Content );
+ return nullptr;
+}
+
+template<typename ReturnType,typename FN,typename... Alternatives>
+ReturnType OFvisit( FN&& fn, OFvariant<Alternatives...>& v )
+{
+ using functor = ReturnType(OFvariant<Alternatives...>::*)(FN&&);
+ static const functor visit[] =
+ {
+ &OFvariant<Alternatives...>::template visit_alternative<ReturnType,Alternatives,FN>...
+ };
+ return (v.*visit[v.index()])( std::forward<FN>( fn ) );
+}
+
+template<typename ReturnType,typename FN,typename... Alternatives>
+ReturnType OFvisit( FN&& fn, const OFvariant<Alternatives...>& v )
+{
+ using functor = ReturnType(OFvariant<Alternatives...>::*)(FN&&) const;
+ static const functor visit[] =
+ {
+ &OFvariant<Alternatives...>::template const_visit_alternative<ReturnType,Alternatives,FN>...
+ };
+ return (v.*visit[v.index()])( std::forward<FN>( fn ) );
+}
+
+#elif !defined(DOXYGEN) // fallback implementation
+
+// Include the actual implementation (that emulates variadic templates)
+#include "dcmtk/ofstd/variadic/variant.h"
+
+#else // NOT C++11 && NOT DOXYGEN
+
+/** A class template that represents a type-safe union.
+ * <b><em>#include</em> "dcmtk/ofstd/ofvriant.h"</b> for using this class<br>
+ * @headerfile ofvriant.h "dcmtk/ofstd/ofvriant.h"
+ * @tparam Alternatives a set of types that may be stored in this variant. All types must be (possibly
+ * cv-qualified) object types.
+ * @details
+ * OFvariant is a custom implementation of a subset of C++17's std::variant,
+ * see http://en.cppreference.com/w/cpp/utility/variant for a description of std::variant.
+ * An instance of OFvariant at any given time holds a value of one of its alternative types.
+ * As with unions, if a variant holds a value of some object type T, the object representation of T is
+ * allocated directly within the object representation of the variant itself if possible.
+ * @note If no suitable alignment specifiers were available for the target platform, OFvariant will
+ * use a fallback implementation that stores the alternative on the heap – as opposite to std::variant.
+ * @details
+ * The preferred way to access an OFvariant object is visitation utilizing @ref ofvisit_variant "OFvisit".
+ * If a certain alternative is expected to be held by the variant, @ref ofget_variant "OFget" may be used to
+ * access it directly.
+ * @see @ref ofvisit_variant "OFvisit" – @copybrief ofvisit_variant
+ * @see @ref ofget_variant "OFget" – @copybrief ofget_variant
+ * @see OFmonostate – @copybrief OFmonostate
+ * @see @ref OFin_place_helpers "OFin_place" – @copydoc OFin_place_helpers_brief
+ */
+template<typename... Alternatives>
+class OFvariant
+{
+public:
+
+ /** Constructs a variant holding a default constructed value of the first alternative.
+ * @pre The first alternative must be default constructible.
+ * @see OFmonostate – @copybrief OFmonostate
+ */
+ OFvariant();
+
+ /** Copy constructs a variant holding a copy of the value rhs holds.
+ * @param rhs a const reference to another object of equal type.
+ * @pre All alternatives must be copy constructible.
+ */
+ OFvariant( const OFvariant& rhs );
+
+ /** Move constructs a variant by moving the value rhs holds.
+ * @param rhs an rvalue reference to another object of equal type.
+ * @pre All alternatives must be move constructible.
+ * @note This constructor is currently only available if C++11 support was enabled.
+ */
+ OFvariant( OFvariant&& rhs );
+
+ /** Constructs a variant holding the alternative that most closely matches the given
+ * argument.
+ * @tparam T the type of the argument, will be deduced automatically.
+ * @param t an object of type `T` that will be converted to one of the alternatives.
+ * @precondition There must be at least one alternative that can be constructed from
+ * the given parameter `t` and there must be exactly one such alternative that
+ * takes precedence over the others.
+ * @attention t will be perfectly forwarded if C++11 support is available, i.e. the
+ * alternative may be move constructed from `t` if possible. Support for perfect
+ * forwarding is NOT available without C++11 support, therefore the alternative
+ * will be copy constructed in this case, this means: <b>the selected alternative
+ * must be copy constructible if pre C++11 compilers shall be supported</b>.
+ * @details
+ * <h3>Usage Example:</h3>
+ * @code{.cpp}
+ * OFvariant<int,float,long>( 3 ); // OK
+ * OFvariant<int,int>( 3 ); // ill formed, both alternatives take equal precedence
+ * OFvariant<OFString,OFBool>( "abc" ); // OK, but chooses OFBool!
+ * @endcode
+ */
+ template<typename T>
+ OFvariant( T t );
+
+ /** Destroys the value that the variant currently holds.
+ */
+ ~OFvariant();
+
+ /** Copy assigns the value rhs holds to *this.
+ * @param rhs a const reference to another object of equal type.
+ * @pre all alternatives must be copy constructible and copy assignable.
+ * @return `*this`
+ * @post
+ * @li if `*this` and `rhs` hold the same alternative, the value contained in `rhs`
+ * is copy assigned to the value contained in `*this`.
+ * @li if `*this` and `rhs` hold different alternatives, the value contained in `*this`
+ * is destroyed and a new one is copy constructed from the value contained in `rhs`.
+ */
+ OFvariant& operator=( const OFvariant& rhs );
+
+ /** Move assigns the value rhs holds to *this.
+ * @param rhs an rvalue reference to another object of equal type.
+ * @pre all alternatives must be move constructible and move assignable.
+ * @return `*this`
+ * @post
+ * @li if `*this` and `rhs` hold the same alternative, the value contained in `rhs`
+ * is move assigned to the value contained in `*this`.
+ * @li if `*this` and `rhs` hold different alternatives, the value contained in `*this`
+ * is destroyed and a new one is move constructed from the value contained in `rhs`.
+ * @note This constructor is currently only available if C++11 support was enabled.
+ */
+ OFvariant& operator=( OFvariant&& rhs );
+
+ /** Converts the given argument to one of the alternatives and assigns it to *this.
+ * @tparam T the type of the argument, will be deduced automatically.
+ * @param t an object of type `T` that will be converted to one of the alternatives
+ * for assignment.
+ * @return `*this`
+ * @pre There must be at least one alternative that can be constructed from
+ * the given parameter `t` and there must be exactly one such alternative that
+ * takes precedence over the others.
+ * @attention `t` will be perfectly forwarded if C++11 support is available, i.e. the
+ * alternative may be move constructed from t if possible. Support for perfect
+ * forwarding is NOT available without C++11 support, therefore the alternative
+ * will be copy constructed in this case, this means: <b>the selected alternative
+ * must be copy constructible if pre C++11 compilers shall be supported</b>.
+ * @details
+ * <h3>Usage Example:</h3>
+ * @code{.cpp}
+ * OFvariant<int,float,long> v1;
+ * v1 = 3 // OK
+ * OFvariant<int,int> v2;
+ * v2 = 3 // ill formed, both alternatives take equal precedence
+ * OFvariant<OFString,OFBool> v3;
+ * v3 = "abc"; // OK, but chooses OFBool!
+ * @endcode
+ */
+ template<typename T>
+ OFvariant& operator=( T t );
+
+ /** Get the index of alternative that is currently being held.
+ * @return the zero based index of that alternative that is currently being held by
+ * `*this`, i.e. `0` for the first alternative, `1` for the second, etc.
+ */
+ size_t index() const;
+};
+
+/** Try to get a pointer to the given alternative from an OFvariant object.
+ * @ingroup ofget_variant
+ * @relates OFvariant
+ * @tparam Alternative the chosen alternative that shall be accessed.
+ * @tparam Alternatives the alternatives the given variant could hold, will be deduced
+ * automatically.
+ * @param v a reference to an OFvariant object potentially holding `Alternative`.
+ * @return the address of the contained value of type `Alternative` if such a value is
+ * contained. `OFnullptr` otherwise.
+ * @details
+ * <h3>Usage Example:</h3>
+ * @code{.cpp}
+ * OFvariant<int,OFString> v;
+ * // ... some value is assigned to v ...
+ * if( int* pI = OFget<int>( v ) )
+ * {
+ * COUT << "Yes, it really is an int with the value " << *pI << '!' << OFendl;
+ * *pI = "27"; // now, let's directly assign something else
+ * }
+ * @endcode
+ */
+template<typename Alternative,typename... Alternatives>
+Alternative* OFget( OFvariant<Alternatives...>* v );
+
+/** Try to get a pointer to the given alternative from an OFvariant object.
+ * @ingroup ofget_variant
+ * @relates OFvariant
+ * @tparam Alternative the chosen alternative that shall be accessed.
+ * @tparam Alternatives the alternatives the given variant could hold, will be deduced
+ * automatically.
+ * @param v a const reference to an OFvariant object potentially holding `Alternative`.
+ * @return the address of the contained value of type `const Alternative` if such a value is
+ * contained. `OFnullptr` otherwise.
+ * @details
+ * <h3>Usage Example:</h3>
+ * @code{.cpp}
+ * const OFvariant<int,OFString> v( ... some value is assigned to v ... );
+ * if( int* pI = OFget<int>( v ) ) // error, the result is const!
+ * if( const int* pI = OFget<int>( v ) ) // OK
+ * {
+ * COUT << "Yes, it really is an int with the value " << *pI << '!' << OFendl;
+ * *pI = "27"; // Error, *pI is const!
+ * }
+ * @endcode
+ */
+template<typename Alternative,typename... Alternatives>
+const Alternative* OFget( const OFvariant<Alternatives...>* v );
+
+/** Applies the given visitor to the given OFvariant object.
+ * @ingroup ofvisit_variant
+ * @relates OFvariant
+ * @details@anchor ofget_alternative_const_variant
+ * @tparam Result the type of the returned value. Pre C++11 compiles do not allow determining the
+ * result type automatically in a portable way, therefore, it must be explicitly given by
+ * the caller.
+ * @tparam Visitor the type of the visitor, will be deduced automatically.
+ * @tparam Alternatives the alternatives the given variant could hold, will be deduced
+ * automatically.
+ * @param visitor the visitor that will be invoked with the alternative currently being
+ * held by the given OFvariant object.
+ * @param v a reference to an OFvariant object that is going to be visited.
+ * @return Let `CurrentAlternative` be the alternative that v currently holds: the result
+ * of `visitor( *OFget<CurrentAlternative>( &v ) )` will be converted to `Result` and then
+ * returned.
+ * @pre all possible results must be convertible to `Result`.
+ * @pre `visitor` must be able to take all possible alternatives.
+ * @note If C++11 support is available, the visitor will be forwarded using perfect forwarding.
+ * If not, the visitor may be copy constructed at least once, therefore, the visitor needs
+ * to be copy constructible when pre C++11 compilers are targeted.
+ * @details
+ * <h3>Usage Example:</h3>
+ * @code{.cpp}
+ * struct PowerVisitor
+ * {
+ * template<typename Number>
+ * Number operator()( Number number )
+ * {
+ * return number * number;
+ * }
+ * };
+ * struct PrintVisitor
+ * {
+ * template<typename Number>
+ * void operator()( Number number )
+ * {
+ * COUT << number << OFendl;
+ * }
+ * };
+ * struct AssignVisitor
+ * {
+ * template<typename Number>
+ * void operator()( Number& number )
+ * {
+ * number *= number;
+ * }
+ * };
+ * // ...
+ * OFvariant<int,float,double> v( 3.14 );
+ * OFvariant<int,float,double> result = OFvisit<OFvariant<int,float,double> >( PowerVisitor(), v );
+ * switch( result.index() )
+ * {
+ * case 0: COUT << "int "; break;
+ * case 1: COUT << "float "; break;
+ * case 2: COUT << "double "; break;
+ * }
+ * OFvisit<void>( PrintVisitor(), result );
+ * COUT << "double " << OFvisit<double>( PowerVisitor(), v ) << OFendl; // OK, every alternative fits inside double
+ * COUT << "int " << OFvisit<int>( PowerVisitor(), v ) << OFendl; // OK, value will be truncated!
+ * COUT << "string " << OFvisit<OFString>( PowerVisitor(), v ) << OFendl; // ERROR!
+ * OFvisit<void>( AssignVisitor(), v );
+ * OFvisit<void>( PrintVisitor(), v );
+ * @endcode
+ * <b>Output (if the error was removed):</b>
+ * @verbatim
+ double 9.8596
+ double 9.8596
+ int 9
+ 9.8596
+ @endverbatim
+ */
+template<typename Result,typename Visitor,typename... Alternatives>
+Result OFvisit( Visitor visitor, OFvariant<Alternatives...>& v );
+
+/** Applies the given visitor to the given OFvariant object.
+ * @ingroup ofvisit_variant
+ * @relates OFvariant
+ * @tparam Result the type of the returned value. Pre C++11 compiles do not allow determining the
+ * result type automatically in a portable way, therefore, it must be explicitly given by
+ * the caller.
+ * @tparam Visitor the type of the visitor, will be deduced automatically.
+ * @tparam Alternatives the alternatives the given variant could hold, will be deduced
+ * automatically.
+ * @param visitor the visitor that will be invoked with the alternative currently being
+ * held by the given OFvariant object.
+ * @param v a const reference to an OFvariant object that is going to be visited.
+ * @return Let `CurrentAlternative` be the alternative that v currently holds: the result
+ * of `visitor( *OFget<CurrentAlternative>( &v ) )` will be converted to `Result` and then
+ * returned.
+ * @pre all possible results must be convertible to `Result`.
+ * @pre `visitor` must be able to take all possible alternatives.
+ * @note If C++11 support is available, the visitor will be forwarded using perfect forwarding.
+ * If not, the visitor may be copy constructed at least once, therefore, the visitor needs
+ * to be copy constructible when pre C++11 compilers are targeted.
+ * @details
+ * <h3>Usage Example:</h3>
+ * @code{.cpp}
+ * struct PowerVisitor
+ * {
+ * template<typename Number>
+ * Number operator()( Number number )
+ * {
+ * return number * number;
+ * }
+ * };
+ * struct PrintVisitor
+ * {
+ * template<typename Number>
+ * void operator()( Number number )
+ * {
+ * COUT << number << OFendl;
+ * }
+ * };
+ * struct AssignVisitor
+ * {
+ * template<typename Number>
+ * void operator()( Number& number )
+ * {
+ * number *= number;
+ * }
+ * };
+ * // ...
+ * const OFvariant<int,float,double> v( 3.14 );
+ * OFvariant<int,float,double> result = OFvisit<OFvariant<int,float,double> >( PowerVisitor(), v );
+ * switch( result.index() )
+ * {
+ * case 0: COUT << "int "; break;
+ * case 1: COUT << "float "; break;
+ * case 2: COUT << "double "; break;
+ * }
+ * OFvisit<void>( PrintVisitor(), result );
+ * COUT << "double " << OFvisit<double>( PowerVisitor(), v ) << OFendl; // OK, every alternative fits inside double
+ * COUT << "int " << OFvisit<int>( PowerVisitor(), v ) << OFendl; // OK, value will be truncated!
+ * COUT << "string " << OFvisit<OFString>( PowerVisitor(), v ) << OFendl; // ERROR!
+ * OFvisit<void>( AssignVisitor(), v ); // ERROR, v is const!
+ * OFvisit<void>( PrintVisitor(), v );
+ * @endcode
+ * <b>Output (if the errors were removed):</b>
+ * @verbatim
+ double 9.8596
+ double 9.8596
+ int 9
+ 3.14
+ @endverbatim
+ */
+template<typename Result,typename Visitor,typename... Alternatives>
+Result OFvisit( Visitor visitor, const OFvariant<Alternatives...>& v );
+
+#endif // DOXYGEN
+
+/** A helper type for making OFvariant default constructible.
+ * @relates OFvariant
+ * @details
+ * Use OFmonostate as the first alternative of an OFvariant otherwise holding a non default constructible type as
+ * the first alternative for making the variant itself default constructible.
+ * @note Be aware that any visitor applied to such an OFvariant object must also accept OFmonostate as an argument.
+ * @details
+ * <h3>Example</h3>
+ * @code{.cpp}
+ * template<typename T>
+ * struct NonDefaultConstructible
+ * {
+ * NonDefaultConstructible( T t ) : value( t ) {}
+ * T value;
+ * };
+ * typedef NonDefaultConstructible<int> nint;
+ * typedef NonDefaultConstructible<float> nfloat;
+ * // ...
+ * OFvariant<nint,nfloat> v( 3 ); // OK, but what if we don't know the value yet?
+ * OFvariant<nint,nfloat> v; // ERROR!
+ * OFvariant<OFmonostate,nint,nfloat> v; // OK
+ * v = 3; // assign the value when it's known
+ * @endcode
+ */
+struct OFmonostate {};
+
+#endif // OFVARIANT_H
--- /dev/null
+/*
+** DO NOT EDIT THIS FILE !!!
+** It was generated automatically by:
+**
+** User: jan
+** Host: NBOFFIS99
+** Date: 2016-07-19 19:01:07
+** Prog: /home/jan/Desktop/homes/scripts/make_variadic.sh
+**
+** Purpose:
+** Defining some helper template metafunctions for emulating variadic
+** templates.
+*/
+#ifndef VARIADIC_HELPERS_H
+#define VARIADIC_HELPERS_H
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+
+#include "dcmtk/ofstd/oftraits.h"
+#include "dcmtk/ofstd/ofalign.h"
+
+// Some macros for being used in non generated code
+#define OFVARIADIC_DECLARE_TEMPLATE_PARAMETER_PACK_WITH_DEFAULTS(N) typename N ## 1=OFvariadic_nil,typename N ## 2=OFvariadic_nil,typename N ## 3=OFvariadic_nil,typename N ## 4=OFvariadic_nil,typename N ## 5=OFvariadic_nil,typename N ## 6=OFvariadic_nil,typename N ## 7=OFvariadic_nil,typename N ## 8=OFvariadic_nil,typename N ## 9=OFvariadic_nil,typename N ## 10=OFvariadic_nil,typename N ## 11=OFvariadic_nil,typename N ## 12=OFvariadic_nil,typename N ## 13=OFvariadic_nil,typename N ## 14=OFvariadic_nil,typename N ## 15=OFvariadic_nil,typename N ## 16=OFvariadic_nil,typename N ## 17=OFvariadic_nil,typename N ## 18=OFvariadic_nil,typename N ## 19=OFvariadic_nil,typename N ## 20=OFvariadic_nil,typename N ## 21=OFvariadic_nil,typename N ## 22=OFvariadic_nil,typename N ## 23=OFvariadic_nil,typename N ## 24=OFvariadic_nil,typename N ## 25=OFvariadic_nil,typename N ## 26=OFvariadic_nil,typename N ## 27=OFvariadic_nil,typename N ## 28=OFvariadic_nil,typename N ## 29=OFvariadic_nil,typename N ## 30=OFvariadic_nil,typename N ## 31=OFvariadic_nil,typename N ## 32=OFvariadic_nil,typename N ## 33=OFvariadic_nil,typename N ## 34=OFvariadic_nil,typename N ## 35=OFvariadic_nil,typename N ## 36=OFvariadic_nil,typename N ## 37=OFvariadic_nil,typename N ## 38=OFvariadic_nil,typename N ## 39=OFvariadic_nil,typename N ## 40=OFvariadic_nil,typename N ## 41=OFvariadic_nil,typename N ## 42=OFvariadic_nil,typename N ## 43=OFvariadic_nil,typename N ## 44=OFvariadic_nil,typename N ## 45=OFvariadic_nil,typename N ## 46=OFvariadic_nil,typename N ## 47=OFvariadic_nil,typename N ## 48=OFvariadic_nil,typename N ## 49=OFvariadic_nil
+#define OFVARIADIC_DECLARE_TEMPLATE_PARAMETER_PACK(N) typename N ## 1,typename N ## 2,typename N ## 3,typename N ## 4,typename N ## 5,typename N ## 6,typename N ## 7,typename N ## 8,typename N ## 9,typename N ## 10,typename N ## 11,typename N ## 12,typename N ## 13,typename N ## 14,typename N ## 15,typename N ## 16,typename N ## 17,typename N ## 18,typename N ## 19,typename N ## 20,typename N ## 21,typename N ## 22,typename N ## 23,typename N ## 24,typename N ## 25,typename N ## 26,typename N ## 27,typename N ## 28,typename N ## 29,typename N ## 30,typename N ## 31,typename N ## 32,typename N ## 33,typename N ## 34,typename N ## 35,typename N ## 36,typename N ## 37,typename N ## 38,typename N ## 39,typename N ## 40,typename N ## 41,typename N ## 42,typename N ## 43,typename N ## 44,typename N ## 45,typename N ## 46,typename N ## 47,typename N ## 48,typename N ## 49
+#define OFVARIADIC_TEMPLATE_PARAMETER_PACK(N) N ## 1,N ## 2,N ## 3,N ## 4,N ## 5,N ## 6,N ## 7,N ## 8,N ## 9,N ## 10,N ## 11,N ## 12,N ## 13,N ## 14,N ## 15,N ## 16,N ## 17,N ## 18,N ## 19,N ## 20,N ## 21,N ## 22,N ## 23,N ## 24,N ## 25,N ## 26,N ## 27,N ## 28,N ## 29,N ## 30,N ## 31,N ## 32,N ## 33,N ## 34,N ## 35,N ## 36,N ## 37,N ## 38,N ## 39,N ## 40,N ## 41,N ## 42,N ## 43,N ## 44,N ## 45,N ## 46,N ## 47,N ## 48,N ## 49
+
+/** A tag for template parameters to mark them as 'not a template parameter'.
+ */
+struct OFvariadic_nil;
+
+template<typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+struct OFvariadic_parameter_pack_sizeof
+: OFintegral_constant<size_t,OFvariadic_parameter_pack_sizeof<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::value+1> {};
+
+template<>
+struct OFvariadic_parameter_pack_sizeof<>
+: OFintegral_constant<size_t,0> {};
+
+template<size_t Index,typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+struct OFvariadic_nth_type
+: OFvariadic_nth_type<Index-1,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49> {};
+
+template<typename T0,typename T1,typename T2,typename T3,typename T4,typename T5,typename T6,typename T7,typename T8,typename T9,typename T10,typename T11,typename T12,typename T13,typename T14,typename T15,typename T16,typename T17,typename T18,typename T19,typename T20,typename T21,typename T22,typename T23,typename T24,typename T25,typename T26,typename T27,typename T28,typename T29,typename T30,typename T31,typename T32,typename T33,typename T34,typename T35,typename T36,typename T37,typename T38,typename T39,typename T40,typename T41,typename T42,typename T43,typename T44,typename T45,typename T46,typename T47,typename T48,typename T49>
+struct OFvariadic_nth_type<0,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>
+{ typedef T0 type; };
+
+template<size_t Index,typename T,typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+struct OFvariadic_find_type_t
+: OFvariadic_find_type_t<Index+1,T,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49> {};
+
+template<size_t Index,typename T0,typename T1,typename T2,typename T3,typename T4,typename T5,typename T6,typename T7,typename T8,typename T9,typename T10,typename T11,typename T12,typename T13,typename T14,typename T15,typename T16,typename T17,typename T18,typename T19,typename T20,typename T21,typename T22,typename T23,typename T24,typename T25,typename T26,typename T27,typename T28,typename T29,typename T30,typename T31,typename T32,typename T33,typename T34,typename T35,typename T36,typename T37,typename T38,typename T39,typename T40,typename T41,typename T42,typename T43,typename T44,typename T45,typename T46,typename T47,typename T48,typename T49>
+struct OFvariadic_find_type_t<Index,T0,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>
+: OFintegral_constant<size_t,Index> {};
+
+template<size_t Index,typename T>
+struct OFvariadic_find_type_t<Index,T>
+: OFintegral_constant<size_t,-1> {};
+
+template<typename T,typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+struct OFvariadic_find_type
+: OFintegral_constant<size_t,OFvariadic_find_type_t<0,T,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::value> {};
+
+template<template<typename L,typename R> class Accumulator,typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+struct OFfold
+: OFfold<Accumulator,typename Accumulator<T0,T1>::type,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49> {};
+
+template<template<typename L,typename R> class Accumulator,typename T0>
+struct OFfold<Accumulator,T0> : T0 { typedef T0 type; };
+
+template<template<typename L,typename R> class Accumulator>
+struct OFfold<Accumulator> {};
+
+template<typename L,typename R>
+struct OFmax_sizeof
+: OFintegral_constant<size_t,(sizeof(L) > sizeof(R) ? sizeof(L) : sizeof(R))> {};
+
+template<size_t L,typename R>
+struct OFmax_sizeof<OFintegral_constant<size_t,L>,R>
+: OFintegral_constant<size_t,(L > sizeof(R) ? L : sizeof(R))> {};
+
+#ifdef OFalignof
+template<typename L,typename R>
+struct OFmax_alignof
+: OFintegral_constant<size_t,(OFalignof(L) > OFalignof(R) ? OFalignof(L) : OFalignof(R))> {};
+
+template<size_t L,typename R>
+struct OFmax_alignof<OFintegral_constant<size_t,L>,R>
+: OFintegral_constant<size_t,(L > OFalignof(R) ? L : OFalignof(R))> {};
+#endif // OFalignof
+
+#endif // VARIADIC_HELPERS_H
--- /dev/null
+/*
+** DO NOT EDIT THIS FILE !!!
+** It was generated automatically by:
+**
+** User: jan
+** Host: caesar
+** Date: 2016-07-14 14:48:02
+** Prog: /home/jan/scripts/make_variadic.sh
+**
+** Purpose:
+** Emulating variadic template parameters support for OFvariant with generated
+** code.
+*/
+#ifndef VARIADIC_VARIANT_H
+#define VARIADIC_VARIANT_H
+
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+
+#include "dcmtk/ofstd/variadic/helpers.h"
+
+// We hide all this from doxygen, because it would only scare sane people
+// (and it is not needed for understanding how to use OFvariant).
+#ifndef DOXYGEN
+
+// Template recursively overload constructor and assignment operator for the
+// different alternatives of the variant (used in the template constructor/
+// assignment members).
+template<size_t Index,typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+struct OFvariant_overload
+: OFvariant_overload<Index+1,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>
+{
+ // Let the inherited methods take part in overload resolution
+ using OFvariant_overload<Index+1,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::constructor;
+ using OFvariant_overload<Index+1,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::assignment;
+ static Uint16 test_accepts( T0 );
+ static Uint8 test_accepts( ... );
+#ifdef OFalign
+ static size_t constructor( void* content, const T0& t0 )
+ {
+ new (content) T0( t0 );
+#else
+ static size_t constructor( void*& content, const T0& t0 )
+ {
+ content = new T0( t0 );
+#endif
+ return Index;
+ }
+
+ static bool assignment( size_t index, void* content, const T0& t0 )
+ {
+ if( index == Index )
+ {
+ *static_cast<T0*>( content ) = t0;
+ return true;
+ }
+ return false;
+ }
+
+ template<typename T>
+ struct accepts : OFintegral_constant<OFBool,sizeof(test_accepts(*OFstatic_cast(T*,OFnullptr)))==2 || OFvariant_overload<Index+1,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::template accepts<T>::value> {};
+};
+
+// Template recursion end, declares both functions with incompatible
+// signatures so that the 'using' statements work but the functions
+// do not effectively take part in the overload resolution.
+template<size_t Index>
+struct OFvariant_overload<Index>
+{
+ static void constructor();
+ static void assignment();
+ template<typename T>
+ struct accepts : OFfalse_type {};
+};
+
+// Creates a function pointer lookup table to select a function for the
+// currently contained alternative based on the stored index.
+// This is not really magic, the syntax will hurt your eyes though!
+template<typename Invoker,typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+class OFvariant_invoke_t
+{
+public:
+ OFvariant_invoke_t()
+ {
+ // Template-recursively assign the function pointers to the fitting
+ // position inside the function pointer array. This will most likely
+ // be inlined by the compiler (it is tail recursive) and therefore
+ // not hurt the performance.
+ init<0>();
+ }
+
+ OFTypename Invoker::return_type operator()( size_t index, void* content, const Invoker& invoker = Invoker() )
+ {
+ // Select the fitting function pointer based on the index and call it with
+ // the given pointer to the current contents.
+ return (invoker.*m_Alternatives[index])( content );
+ }
+
+private:
+
+ // This is the recursion step for the Init template, it initializes the current
+ // function pointer and recurses to the Init template for the next index.
+ template<size_t Index>
+ OFTypename OFenable_if<(Index < OFvariadic_parameter_pack_sizeof<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::value)>::type init()
+ {
+ m_Alternatives[Index] = &Invoker::template invoke<OFTypename OFvariadic_nth_type<Index,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::type>;
+ init<Index+1>();
+ }
+
+ // this is the specialization for the base of the recursion, doing nothing for the
+ // N+1th alternative, effectively stopping the recursion.
+ template<size_t Index>
+ OFTypename OFenable_if<(Index >= OFvariadic_parameter_pack_sizeof<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::value)>::type init()
+ {
+
+ }
+
+ // the actual function pointer array
+ OFTypename Invoker::return_type (Invoker::*m_Alternatives[OFvariadic_parameter_pack_sizeof<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::value])(void*) const;
+};
+
+// A helper template function for initializing and using a function
+// pointer lookup table as dispatcher for variant visitation etc.
+template<typename Invoker,typename T0,typename T1,typename T2,typename T3,typename T4,typename T5,typename T6,typename T7,typename T8,typename T9,typename T10,typename T11,typename T12,typename T13,typename T14,typename T15,typename T16,typename T17,typename T18,typename T19,typename T20,typename T21,typename T22,typename T23,typename T24,typename T25,typename T26,typename T27,typename T28,typename T29,typename T30,typename T31,typename T32,typename T33,typename T34,typename T35,typename T36,typename T37,typename T38,typename T39,typename T40,typename T41,typename T42,typename T43,typename T44,typename T45,typename T46,typename T47,typename T48,typename T49>
+OFTypename Invoker::return_type OFvariant_invoke( size_t index, void* content, const Invoker& invoker = Invoker() )
+{
+ // this may be a race condition in older compilers, which is no
+ // problem since the copied addresses of the functions are always
+ // the same.
+ static OFvariant_invoke_t<Invoker,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49> invocation_table;
+ return invocation_table( index, content, invoker );
+}
+
+// A functor that does copy construction from another variant
+// object.
+struct OFvariant_copy_construct_invoker
+{
+ typedef void return_type;
+
+#ifdef OFalign
+ OFvariant_copy_construct_invoker( void* content )
+ : m_Content( content )
+#else
+ OFvariant_copy_construct_invoker( void*& content )
+ : m_pContent( content )
+#endif
+ {
+
+ }
+
+ template<typename T>
+ void invoke( void* content ) const
+ {
+#ifdef OFalign
+ new (m_Content) T( *static_cast<const T*>( content ) );
+#else
+ m_pContent = new T( *static_cast<const T*>( content ) );
+#endif
+ }
+
+#ifdef OFalign
+ void* m_Content;
+#else
+ void*& m_pContent;
+#endif
+};
+
+// A functor that assigns the contents of another variant object
+// that contains the same alternative (regarding the type).
+struct OFvariant_assign_invoker
+{
+ typedef void return_type;
+
+ OFvariant_assign_invoker( void* content )
+ : m_Content( content )
+ {
+
+ }
+
+ template<typename T>
+ void invoke( void* rhs ) const
+ {
+ *static_cast<T*>( m_Content ) = *static_cast<const T*>( rhs );
+ }
+
+ void* m_Content;
+};
+
+// A functor that destroys the contained object.
+struct OFvariant_destroy_invoker
+{
+ typedef void return_type;
+
+ template<typename T>
+ void invoke( void* content ) const
+ {
+#ifdef OFalign
+ static_cast<T*>( content )->~T();
+#else
+ delete static_cast<T*>( content );
+#endif
+ }
+};
+
+// A functor that invokes the given functor, seriously!
+template<typename ReturnType,typename FN>
+struct OFvariant_visit_invoker
+{
+ typedef ReturnType return_type;
+
+ OFvariant_visit_invoker( FN& fn )
+ : m_Fn( fn )
+ {
+
+ }
+
+ template<typename T>
+ ReturnType invoke( void* content ) const
+ {
+ return m_Fn( *static_cast<T*>( content ) );
+ }
+
+ FN& m_Fn;
+};
+
+// The same as above, but for the const case.
+template<typename ReturnType,typename FN>
+struct OFvariant_const_visit_invoker
+{
+ typedef ReturnType return_type;
+
+ OFvariant_const_visit_invoker( FN& fn )
+ : m_Fn( fn )
+ {
+
+ }
+
+ template<typename T>
+ ReturnType invoke( void* content ) const
+ {
+ return m_Fn( *static_cast<const T*>( content ) );
+ }
+
+ FN& m_Fn;
+};
+
+// The actual variant implementation. Don't mess with this, look
+// at the doxygen API description instead.
+template<typename T0=OFvariadic_nil,typename T1=OFvariadic_nil,typename T2=OFvariadic_nil,typename T3=OFvariadic_nil,typename T4=OFvariadic_nil,typename T5=OFvariadic_nil,typename T6=OFvariadic_nil,typename T7=OFvariadic_nil,typename T8=OFvariadic_nil,typename T9=OFvariadic_nil,typename T10=OFvariadic_nil,typename T11=OFvariadic_nil,typename T12=OFvariadic_nil,typename T13=OFvariadic_nil,typename T14=OFvariadic_nil,typename T15=OFvariadic_nil,typename T16=OFvariadic_nil,typename T17=OFvariadic_nil,typename T18=OFvariadic_nil,typename T19=OFvariadic_nil,typename T20=OFvariadic_nil,typename T21=OFvariadic_nil,typename T22=OFvariadic_nil,typename T23=OFvariadic_nil,typename T24=OFvariadic_nil,typename T25=OFvariadic_nil,typename T26=OFvariadic_nil,typename T27=OFvariadic_nil,typename T28=OFvariadic_nil,typename T29=OFvariadic_nil,typename T30=OFvariadic_nil,typename T31=OFvariadic_nil,typename T32=OFvariadic_nil,typename T33=OFvariadic_nil,typename T34=OFvariadic_nil,typename T35=OFvariadic_nil,typename T36=OFvariadic_nil,typename T37=OFvariadic_nil,typename T38=OFvariadic_nil,typename T39=OFvariadic_nil,typename T40=OFvariadic_nil,typename T41=OFvariadic_nil,typename T42=OFvariadic_nil,typename T43=OFvariadic_nil,typename T44=OFvariadic_nil,typename T45=OFvariadic_nil,typename T46=OFvariadic_nil,typename T47=OFvariadic_nil,typename T48=OFvariadic_nil,typename T49=OFvariadic_nil>
+class OFvariant
+{
+public:
+ // typedef for old compilers that do not define the type 'OFvariant' in derived classes
+ typedef OFvariant variant;
+
+ OFvariant()
+#ifdef OFalign
+ : m_Content()
+#else
+ : m_pContent( new T0 )
+#endif
+ , m_Index( 0 )
+ {
+#ifdef OFalign
+ new (content()) T0;
+#endif
+ }
+
+ template<typename T>
+ OFvariant( const T& t, OFTypename OFenable_if<OFvariant_overload<0,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::template accepts<T>::value,int>::type = 0 )
+#ifdef OFalign
+ : m_Content()
+#else
+ : m_pContent()
+#endif
+ , m_Index( OFvariant_overload<0,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::constructor( content(), t ) )
+ {
+
+ }
+
+ OFvariant( const OFvariant& rhs )
+#ifdef OFalign
+ : m_Content()
+#else
+ : m_pContent()
+#endif
+ , m_Index( rhs.index() )
+ {
+ copy_construct( rhs.content() );
+ }
+
+ template<typename T>
+ OFTypename OFenable_if<OFvariant_overload<0,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::template accepts<T>::value,OFvariant>::type& operator=( const T& t )
+ {
+ // Either assign 't' if the contained alternative fits.
+ if( !OFvariant_overload<0,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::assignment( index(), content(), t ) )
+ {
+ // Or destroy the contained alternative and construct
+ // a new one, based on 't'.
+ destroy();
+ m_Index = OFvariant_overload<0,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::constructor( content(), t );
+ }
+ return *this;
+ }
+
+ OFvariant& operator=( const OFvariant& rhs )
+ {
+ if( this != &rhs )
+ {
+ // Do 'native' assignment if both variants contain
+ // the same alternative
+ if( m_Index == rhs.m_Index )
+ {
+ OFvariant_invoke<OFvariant_assign_invoker,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>
+ (
+ m_Index,
+ rhs.content(),
+ OFvariant_assign_invoker( content() )
+ );
+ }
+ else
+ {
+ // Destroy the contents and copy construct a new
+ // one
+ destroy();
+ m_Index = rhs.m_Index;
+ copy_construct( rhs.content() );
+ }
+ }
+ return *this;
+ }
+
+ ~OFvariant()
+ {
+ // Destroy the contained object
+ destroy();
+ }
+
+ size_t index() const
+ {
+ // Well, this is easy
+ return m_Index;
+ }
+
+private:
+ // Friend declarations for visitation and get<>.
+ template<typename T,typename X0,typename X1,typename X2,typename X3,typename X4,typename X5,typename X6,typename X7,typename X8,typename X9,typename X10,typename X11,typename X12,typename X13,typename X14,typename X15,typename X16,typename X17,typename X18,typename X19,typename X20,typename X21,typename X22,typename X23,typename X24,typename X25,typename X26,typename X27,typename X28,typename X29,typename X30,typename X31,typename X32,typename X33,typename X34,typename X35,typename X36,typename X37,typename X38,typename X39,typename X40,typename X41,typename X42,typename X43,typename X44,typename X45,typename X46,typename X47,typename X48,typename X49>
+ friend T* OFget( OFvariant<X0,X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13,X14,X15,X16,X17,X18,X19,X20,X21,X22,X23,X24,X25,X26,X27,X28,X29,X30,X31,X32,X33,X34,X35,X36,X37,X38,X39,X40,X41,X42,X43,X44,X45,X46,X47,X48,X49>* );
+ template<typename T,typename X0,typename X1,typename X2,typename X3,typename X4,typename X5,typename X6,typename X7,typename X8,typename X9,typename X10,typename X11,typename X12,typename X13,typename X14,typename X15,typename X16,typename X17,typename X18,typename X19,typename X20,typename X21,typename X22,typename X23,typename X24,typename X25,typename X26,typename X27,typename X28,typename X29,typename X30,typename X31,typename X32,typename X33,typename X34,typename X35,typename X36,typename X37,typename X38,typename X39,typename X40,typename X41,typename X42,typename X43,typename X44,typename X45,typename X46,typename X47,typename X48,typename X49>
+ friend const T* OFget( const OFvariant<X0,X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13,X14,X15,X16,X17,X18,X19,X20,X21,X22,X23,X24,X25,X26,X27,X28,X29,X30,X31,X32,X33,X34,X35,X36,X37,X38,X39,X40,X41,X42,X43,X44,X45,X46,X47,X48,X49>* );
+ template<typename ReturnType,typename FN,typename X0,typename X1,typename X2,typename X3,typename X4,typename X5,typename X6,typename X7,typename X8,typename X9,typename X10,typename X11,typename X12,typename X13,typename X14,typename X15,typename X16,typename X17,typename X18,typename X19,typename X20,typename X21,typename X22,typename X23,typename X24,typename X25,typename X26,typename X27,typename X28,typename X29,typename X30,typename X31,typename X32,typename X33,typename X34,typename X35,typename X36,typename X37,typename X38,typename X39,typename X40,typename X41,typename X42,typename X43,typename X44,typename X45,typename X46,typename X47,typename X48,typename X49>
+ friend ReturnType OFvisit( FN, OFvariant<X0,X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13,X14,X15,X16,X17,X18,X19,X20,X21,X22,X23,X24,X25,X26,X27,X28,X29,X30,X31,X32,X33,X34,X35,X36,X37,X38,X39,X40,X41,X42,X43,X44,X45,X46,X47,X48,X49>& );
+ template<typename ReturnType,typename FN,typename X0,typename X1,typename X2,typename X3,typename X4,typename X5,typename X6,typename X7,typename X8,typename X9,typename X10,typename X11,typename X12,typename X13,typename X14,typename X15,typename X16,typename X17,typename X18,typename X19,typename X20,typename X21,typename X22,typename X23,typename X24,typename X25,typename X26,typename X27,typename X28,typename X29,typename X30,typename X31,typename X32,typename X33,typename X34,typename X35,typename X36,typename X37,typename X38,typename X39,typename X40,typename X41,typename X42,typename X43,typename X44,typename X45,typename X46,typename X47,typename X48,typename X49>
+ friend ReturnType OFvisit( FN, const OFvariant<X0,X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13,X14,X15,X16,X17,X18,X19,X20,X21,X22,X23,X24,X25,X26,X27,X28,X29,X30,X31,X32,X33,X34,X35,X36,X37,X38,X39,X40,X41,X42,X43,X44,X45,X46,X47,X48,X49>& );
+
+ // Invoke copy construction
+ void copy_construct( void* rhs )
+ {
+ OFvariant_invoke<OFvariant_copy_construct_invoker,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>
+ (
+ m_Index,
+ rhs,
+ OFvariant_copy_construct_invoker( content() )
+ );
+ }
+
+ // Invoke destructor
+ void destroy()
+ {
+ OFvariant_invoke<OFvariant_destroy_invoker,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>( m_Index, content() );
+ }
+
+#ifdef OFalign
+ // Allocate content with alignment.
+ typedef OFTypename OFfold<OFmax_sizeof,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::type max_sizeof_type;
+ typedef OFTypename OFfold<OFmax_alignof,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::type max_alignof_type;
+ void* content() const { return m_Content; }
+ mutable OFalign_typename(Uint8[max_sizeof_type::value],max_alignof_type::value) m_Content;
+#else
+ // Allocate content on the heap.
+ void*& content() const { return OFconst_cast(void*&,m_pContent); }
+ void* m_pContent;
+#endif
+ size_t m_Index;
+};
+
+// Actual implementation of get<> by type.
+template<typename T,typename T0,typename T1,typename T2,typename T3,typename T4,typename T5,typename T6,typename T7,typename T8,typename T9,typename T10,typename T11,typename T12,typename T13,typename T14,typename T15,typename T16,typename T17,typename T18,typename T19,typename T20,typename T21,typename T22,typename T23,typename T24,typename T25,typename T26,typename T27,typename T28,typename T29,typename T30,typename T31,typename T32,typename T33,typename T34,typename T35,typename T36,typename T37,typename T38,typename T39,typename T40,typename T41,typename T42,typename T43,typename T44,typename T45,typename T46,typename T47,typename T48,typename T49>
+T* OFget( OFvariant<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>* v )
+{
+ return v->index() == OFvariadic_find_type<T,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::value
+ ?
+ static_cast<T*>( v->content() )
+ :
+ OFnullptr
+ ;
+}
+
+// The same as above, but for the const case.
+template<typename T,typename T0,typename T1,typename T2,typename T3,typename T4,typename T5,typename T6,typename T7,typename T8,typename T9,typename T10,typename T11,typename T12,typename T13,typename T14,typename T15,typename T16,typename T17,typename T18,typename T19,typename T20,typename T21,typename T22,typename T23,typename T24,typename T25,typename T26,typename T27,typename T28,typename T29,typename T30,typename T31,typename T32,typename T33,typename T34,typename T35,typename T36,typename T37,typename T38,typename T39,typename T40,typename T41,typename T42,typename T43,typename T44,typename T45,typename T46,typename T47,typename T48,typename T49>
+const T* OFget( const OFvariant<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>* v )
+{
+ return v->index() == OFvariadic_find_type<T,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>::value
+ ?
+ static_cast<const T*>( v->content() )
+ :
+ OFnullptr
+ ;
+}
+
+// Actual implementation if variant visitation.
+template<typename ReturnType,typename FN,typename T0,typename T1,typename T2,typename T3,typename T4,typename T5,typename T6,typename T7,typename T8,typename T9,typename T10,typename T11,typename T12,typename T13,typename T14,typename T15,typename T16,typename T17,typename T18,typename T19,typename T20,typename T21,typename T22,typename T23,typename T24,typename T25,typename T26,typename T27,typename T28,typename T29,typename T30,typename T31,typename T32,typename T33,typename T34,typename T35,typename T36,typename T37,typename T38,typename T39,typename T40,typename T41,typename T42,typename T43,typename T44,typename T45,typename T46,typename T47,typename T48,typename T49>
+ReturnType OFvisit( FN fn, OFvariant<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>& v )
+{
+ return OFvariant_invoke<OFvariant_visit_invoker<ReturnType,FN>,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>( v.index(), v.content(), OFvariant_visit_invoker<ReturnType,FN>( fn ) );
+}
+
+// The same as above, but for the const case.
+template<typename ReturnType,typename FN,typename T0,typename T1,typename T2,typename T3,typename T4,typename T5,typename T6,typename T7,typename T8,typename T9,typename T10,typename T11,typename T12,typename T13,typename T14,typename T15,typename T16,typename T17,typename T18,typename T19,typename T20,typename T21,typename T22,typename T23,typename T24,typename T25,typename T26,typename T27,typename T28,typename T29,typename T30,typename T31,typename T32,typename T33,typename T34,typename T35,typename T36,typename T37,typename T38,typename T39,typename T40,typename T41,typename T42,typename T43,typename T44,typename T45,typename T46,typename T47,typename T48,typename T49>
+ReturnType OFvisit( FN fn, const OFvariant<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>& v )
+{
+ return OFvariant_invoke<OFvariant_const_visit_invoker<ReturnType,FN>,T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49>( v.index(), v.content(), OFvariant_const_visit_invoker<ReturnType,FN>( fn ) );
+}
+
+#endif // !DOXYGEN
+
+#endif // VARIADIC_VARIANT_H
return "localhost";
#endif
}
+
+DCMTK_OFSTD_EXPORT OFin_place_tag OFin_place() { return *static_cast<OFin_place_tag*>(OFnullptr); }
# declare executables
-DCMTK_ADD_EXECUTABLE(ofstd_tests tests tatof tmap tvec tftoa tthread tbase64 tstring tlist tstack tofdatim tofstd tmarkup tchrenc txml tuuid toffile tmem toption ttuple tlimits)
+DCMTK_ADD_EXECUTABLE(ofstd_tests tests tatof tmap tvec tftoa tthread tbase64 tstring tlist tstack tofdatim tofstd tmarkup tchrenc txml tuuid toffile tmem toption ttuple tlimits tvariant)
# make sure executables are linked to the corresponding libraries
DCMTK_TARGET_LINK_MODULES(ofstd_tests ofstd)
../include/dcmtk/ofstd/ofcond.h ../include/dcmtk/ofstd/oflimits.h \
../../config/include/dcmtk/config/arith.h \
../include/dcmtk/ofstd/ofuuid.h
+tvariant.o: tvariant.cc ../../config/include/dcmtk/config/osconfig.h \
+ ../include/dcmtk/ofstd/oftest.h ../include/dcmtk/ofstd/ofconapp.h \
+ ../include/dcmtk/ofstd/oftypes.h ../include/dcmtk/ofstd/ofdefine.h \
+ ../include/dcmtk/ofstd/ofcast.h ../include/dcmtk/ofstd/ofexport.h \
+ ../include/dcmtk/ofstd/ofstdinc.h ../include/dcmtk/ofstd/ofstream.h \
+ ../include/dcmtk/ofstd/ofcmdln.h ../include/dcmtk/ofstd/oflist.h \
+ ../include/dcmtk/ofstd/ofstring.h ../include/dcmtk/ofstd/ofconsol.h \
+ ../include/dcmtk/ofstd/ofthread.h ../include/dcmtk/ofstd/offile.h \
+ ../include/dcmtk/ofstd/ofstd.h ../include/dcmtk/ofstd/oftraits.h \
+ ../include/dcmtk/ofstd/ofcond.h ../include/dcmtk/ofstd/oflimits.h \
+ ../../config/include/dcmtk/config/arith.h \
+ ../include/dcmtk/ofstd/ofvriant.h \
+ ../include/dcmtk/ofstd/variadic/variant.h \
+ ../include/dcmtk/ofstd/variadic/helpers.h \
+ ../include/dcmtk/ofstd/ofalign.h
tvec.o: tvec.cc ../../config/include/dcmtk/config/osconfig.h \
../include/dcmtk/ofstd/oftest.h ../include/dcmtk/ofstd/ofconapp.h \
../include/dcmtk/ofstd/oftypes.h ../include/dcmtk/ofstd/ofdefine.h \
test_objs = tests.o tatof.o tmap.o tvec.o tftoa.o tthread.o tbase64.o \
tstring.o tlist.o tstack.o tofdatim.o tofstd.o tmarkup.o \
tchrenc.o txml.o tuuid.o toffile.o tmem.o toption.o ttuple.o \
- tlimits.o
+ tlimits.o tvariant.o
objs = $(test_objs)
progs = tests
OFTEST_REGISTER(ofstd_tuple);
OFTEST_REGISTER(ofstd_limits);
OFTEST_REGISTER(ofstd_safeSubtractAndAdd);
+OFTEST_REGISTER(ofstd_variant);
OFTEST_MAIN("ofstd")
static int rw_cond6=0;
static int rw_cond7=0;
-class RWLockT1: public OFThread
+class RWLockT2: public OFThread
{
public:
- RWLockT1(): OFThread() {}
- ~RWLockT1() {}
+ RWLockT2(): OFThread() {}
+ ~RWLockT2() {}
virtual void run()
{
- if (0 == rwlock->rdlock())
+ if ((0==mutex2->trylock())&&(OFReadWriteLock::busy == rwlock->trywrlock())) rw_cond5=1;
+ if (0 == rwlock->wrlock())
{
- rw_cond1 = 1; // acquired read lock
- mutex->lock();
- mutex->unlock();
- if (0== rwlock->unlock()) rw_cond2=1;
- mutex2->lock();
+ rw_cond6=1;
mutex2->unlock();
- if (OFReadWriteLock::busy == rwlock->tryrdlock()) rw_cond3=1;
- if ((0 == rwlock->rdlock())&&(0==rwlock->unlock())) rw_cond4=1;
+ OFStandard::milliSleep(wait_timeout);
+ if (0==rwlock->unlock()) rw_cond7=1;
}
return;
}
};
-class RWLockT2: public OFThread
+class RWLockT1: public OFThread
{
+private:
+ RWLockT2 &t2;
public:
- RWLockT2(): OFThread() {}
- ~RWLockT2() {}
+ RWLockT1(RWLockT2 &t2) : OFThread(), t2(t2) {}
+ ~RWLockT1() {}
virtual void run()
{
- if ((0==mutex2->trylock())&&(OFReadWriteLock::busy == rwlock->trywrlock())) rw_cond5=1;
- if (0 == rwlock->wrlock())
+ if (0 == rwlock->rdlock())
{
- rw_cond6=1;
+ t2.start();
+ rw_cond1 = 1; // acquired read lock
+ mutex->lock();
+ mutex->unlock();
+ if (0== rwlock->unlock()) rw_cond2=1;
+ mutex2->lock();
mutex2->unlock();
- OFStandard::milliSleep(wait_timeout);
- if (0==rwlock->unlock()) rw_cond7=1;
+ if (OFReadWriteLock::busy == rwlock->tryrdlock()) rw_cond3=1;
+ if ((0 == rwlock->rdlock())&&(0==rwlock->unlock())) rw_cond4=1;
}
return;
}
BAILOUT(errmsg);
}
- RWLockT1 t1;
- if (0 != t1.start()) BAILOUT("unable to create thread, semaphore test failed");
-
RWLockT2 t2;
- if (0 != t2.start()) BAILOUT("unable to create thread, semaphore test failed");
-
+ RWLockT1 t1(t2);
+ if (0 != t1.start()) BAILOUT("unable to create thread, read/write lock/unlock test failed");
int i=0;
while ((i++<5) && ((!rw_cond1)||(!rw_cond5))) OFStandard::milliSleep(wait_timeout);
BAILOUT(errmsg);
}
OFStandard::milliSleep(wait_timeout);
- if (rw_cond6) BAILOUT("read/write lock test failed");
+ if (rw_cond6) BAILOUT("read/write lock/unlock test failed");
mutex->unlock();
while ((i++<5) && ((!rw_cond2)||(!rw_cond3)||(!rw_cond4)||(!rw_cond5)||(!rw_cond6)||(!rw_cond7))) OFStandard::milliSleep(wait_timeout);
if ((!rw_cond2)||(!rw_cond3)||(!rw_cond4)||(!rw_cond5)||(!rw_cond6)||(!rw_cond7)) BAILOUT("read/write lock/unlock test failed");
- if (0 != t1.join()) BAILOUT("unable to join thread, semaphore test failed");
- if (0 != t2.join()) BAILOUT("unable to join thread, semaphore test failed");
+ if (0 != t1.join()) BAILOUT("unable to join thread, read/write lock/unlock test failed");
+ if (0 != t2.join()) BAILOUT("unable to join thread, read/write lock/unlock test failed");
delete mutex;
delete mutex2;
delete rwlock;
}
-class RWLockerT1: public OFThread
+class RWLockerT2: public OFThread
{
public:
- RWLockerT1(): OFThread() {}
- ~RWLockerT1() {}
+ RWLockerT2(): OFThread() {}
+ ~RWLockerT2() {}
virtual void run()
{
OFReadWriteLocker locker(*rwlock);
- if (0 == locker.rdlock())
+ if ((0==mutex2->trylock())&&(OFReadWriteLock::busy == locker.trywrlock())) rw_cond5=1;
+ if (0 == locker.wrlock())
{
- rw_cond1 = 1; // acquired read lock
- mutex->lock();
- mutex->unlock();
- if (0== locker.unlock()) rw_cond2=1;
- mutex2->lock();
+ rw_cond6=1;
mutex2->unlock();
- if (OFReadWriteLock::busy == locker.tryrdlock()) rw_cond3=1;
- if (0 == locker.rdlock()) rw_cond4=1;
- // Implicit unlock() at the end
+ OFStandard::milliSleep(wait_timeout);
+ // Explicite unlock(), check if this causes one unlock() too much
+ if (0==locker.unlock()) rw_cond7=1;
}
return;
}
};
-class RWLockerT2: public OFThread
+class RWLockerT1: public OFThread
{
+private:
+ RWLockerT2 &t2;
public:
- RWLockerT2(): OFThread() {}
- ~RWLockerT2() {}
+ RWLockerT1(RWLockerT2 &t2): OFThread(), t2(t2) {}
+ ~RWLockerT1() {}
virtual void run()
{
OFReadWriteLocker locker(*rwlock);
- if ((0==mutex2->trylock())&&(OFReadWriteLock::busy == locker.trywrlock())) rw_cond5=1;
- if (0 == locker.wrlock())
+ if (0 == locker.rdlock())
{
- rw_cond6=1;
+ t2.start();
+ rw_cond1 = 1; // acquired read lock
+ mutex->lock();
+ mutex->unlock();
+ if (0== locker.unlock()) rw_cond2=1;
+ mutex2->lock();
mutex2->unlock();
- OFStandard::milliSleep(wait_timeout);
- // Explicite unlock(), check if this causes one unlock() too much
- if (0==locker.unlock()) rw_cond7=1;
+ if (OFReadWriteLock::busy == locker.tryrdlock()) rw_cond3=1;
+ if (0 == locker.rdlock()) rw_cond4=1;
+ // Implicit unlock() at the end
}
return;
}
BAILOUT(errmsg);
}
- RWLockerT1 t1;
- if (0 != t1.start()) BAILOUT("unable to create thread, semaphore test failed");
-
RWLockerT2 t2;
- if (0 != t2.start()) BAILOUT("unable to create thread, semaphore test failed");
-
+ RWLockerT1 t1(t2);
+ if (0 != t1.start()) BAILOUT("unable to create thread, read/write lock test failed");
int i=0;
while ((i++<5) && ((!rw_cond1)||(!rw_cond5))) OFStandard::milliSleep(wait_timeout);
- if ((!rw_cond1)||(!rw_cond5)) BAILOUT("read/write lock/unlock test failed");
+ if ((!rw_cond1)||(!rw_cond5)) BAILOUT("read/write lock test failed");
condition = rwlockLocker.unlock();
if (condition)
{
i=0;
while ((i++<5) && ((!rw_cond2)||(!rw_cond3)||(!rw_cond4)||(!rw_cond5)||(!rw_cond6)||(!rw_cond7))) OFStandard::milliSleep(wait_timeout);
- if ((!rw_cond2)||(!rw_cond3)||(!rw_cond4)||(!rw_cond5)||(!rw_cond6)||(!rw_cond7)) BAILOUT("read/write lock/unlock test failed");
+ if ((!rw_cond2)||(!rw_cond3)||(!rw_cond4)||(!rw_cond5)||(!rw_cond6)||(!rw_cond7)) BAILOUT("read/write lock test failed");
- if (0 != t1.join()) BAILOUT("unable to join thread, semaphore test failed");
- if (0 != t2.join()) BAILOUT("unable to join thread, semaphore test failed");
+ if (0 != t1.join()) BAILOUT("unable to join thread, read/write lock test failed");
+ if (0 != t2.join()) BAILOUT("unable to join thread, read/write lock test failed");
delete mutex;
delete mutex2;
--- /dev/null
+#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
+
+#define OFTEST_OFSTD_ONLY
+#include "dcmtk/ofstd/oftest.h"
+#include "dcmtk/ofstd/ofvriant.h"
+
+struct int_visitor
+{
+ void operator()( double d )
+ {
+ // Avoid compiler warning on unused parameter
+ (void)d;
+ OFCHECK_FAIL( "wrong alternative <double> selected" );
+ }
+
+ void operator()( int i )
+ {
+ // Avoid compiler warning on unused parameter
+ (void)i;
+ OFCHECK( i == 42 );
+ }
+
+ void operator()( char c )
+ {
+ // Avoid compiler warning on unused parameter
+ (void)c;
+ OFCHECK_FAIL( "wrong alternative <char> selected" );
+ }
+};
+
+struct double_visitor
+{
+ bool operator()( double d )
+ {
+ // Avoid compiler warning on unused parameter
+ (void)d;
+ return d == 27.912456f;
+ }
+
+ bool operator()( int i )
+ {
+ // Avoid compiler warning on unused parameter
+ (void)i;
+ OFCHECK_FAIL( "wrong alternative <int> selected" );
+ return false;
+ }
+
+ bool operator()( char c )
+ {
+ // Avoid compiler warning on unused parameter
+ (void)c;
+ OFCHECK_FAIL( "wrong alternative <char> selected" );
+ return false;
+ }
+};
+
+OFTEST(ofstd_variant)
+{
+ // copy construction from alternative
+ OFvariant<int,float,bool> v0( true );
+
+ // default construction
+ OFvariant<int,float,bool> v1;
+
+ OFCHECK( OFget<bool>( &v0 ) );
+ OFCHECK( *OFget<bool>( &v0 ) );
+ OFCHECK( OFget<int>( &v1 ) );
+
+ // alternative changing assignment
+ v0 = 3.1415f;
+
+ // same alternative assignment
+ v1 = 7;
+
+ OFCHECK( !OFget<bool>( &v0 ) );
+ OFCHECK( OFget<float>( &v0 ) );
+ OFCHECK( *OFget<float>( &v0 ) == 3.1415f );
+ OFCHECK( OFget<int>( &v1 ) );
+ OFCHECK( *OFget<int>( &v1 ) == 7 );
+
+ // alternative changing assignment and copy construction
+ OFvariant<int,float,bool> v2( v0 = v1 );
+
+ OFCHECK( OFget<int>( &v0 ) );
+ OFCHECK( *OFget<int>( &v0 ) == 7 );
+ OFCHECK( OFget<int>( &v1 ) );
+ OFCHECK( *OFget<int>( &v1 ) == 7 );
+ OFCHECK( OFget<int>( &v2 ) );
+ OFCHECK( *OFget<int>( &v2 ) == 7 );
+
+ // same alternative assignment
+ v0 = 42;
+
+ OFCHECK( OFget<int>( &v0 ) );
+ OFCHECK( *OFget<int>( &v0 ) == 42 );
+
+ // same alternative assignment
+ v1 = v0;
+
+ OFCHECK( OFget<int>( &v0 ) );
+ OFCHECK( *OFget<int>( &v0 ) == 42 );
+ OFCHECK( OFget<int>( &v1 ) );
+ OFCHECK( *OFget<int>( &v1 ) == 42 );
+
+ v2 = 27.912456f;
+
+ // test visitation
+ OFvisit<void>( int_visitor(), v0 );
+ OFCHECK( OFvisit<bool>( double_visitor(), const_cast<const OFvariant<int,float,bool>&>( v2 ) ) );
+}